diff --git a/.eslintignore b/.eslintignore index e32aec680..2e54eb829 100644 --- a/.eslintignore +++ b/.eslintignore @@ -28,3 +28,6 @@ webpack.config.ts preload.bundle.* about.browser.bundle.* about.preload.bundle.* + +# Sticker Creator has its own eslint config +sticker-creator/** diff --git a/.prettierignore b/.prettierignore index 641883b41..f241676df 100644 --- a/.prettierignore +++ b/.prettierignore @@ -43,3 +43,6 @@ stylesheets/_intlTelInput.scss preload.bundle.* about.browser.bundle.* about.preload.bundle.* + +# Sticker Creator has its own prettier config +sticker-creator/** diff --git a/_locales/en/messages.json b/_locales/en/messages.json index dddfaf989..d20cae89f 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -1562,6 +1562,10 @@ "message": "Sticker pack creator", "description": "(deleted 03/15/2023) Title of the window that pops up with Signal Desktop preferences in it" }, + "icu:signalDesktopStickerCreator": { + "messageformat": "Sticker pack creator", + "description": "Title of the window that pops up with Signal Desktop preferences in it" + }, "aboutSignalDesktop": { "message": "About Signal Desktop", "description": "(deleted 03/29/2023) Item under the Help menu, which opens a small about window" diff --git a/app/main.ts b/app/main.ts index 7d20f35f1..4433faca6 100644 --- a/app/main.ts +++ b/app/main.ts @@ -21,7 +21,6 @@ import { Menu, nativeTheme, powerSaveBlocker, - protocol as electronProtocol, screen, session, shell, @@ -49,6 +48,7 @@ import type { ThemeSettingType } from '../ts/types/StorageUIKeys'; import { ThemeType } from '../ts/types/Util'; import * as Errors from '../ts/types/errors'; import { resolveCanonicalLocales } from '../ts/util/resolveCanonicalLocales'; +import { explodePromise } from '../ts/util/explodePromise'; import './startup_config'; @@ -119,6 +119,8 @@ import { load as loadLocale } from './locale'; import type { LoggerType } from '../ts/types/Logging'; +const STICKER_CREATOR_PARTITION = 'sticker-creator'; + const animationSettings = systemPreferences.getAnimationSettings(); if (OS.isMacOS()) { @@ -955,9 +957,21 @@ ipc.handle('database-ready', async () => { getLogger().info('sending `database-ready`'); }); -ipc.handle('open-art-creator', (_event, { username, password }) => { - const baseUrl = config.get('artCreatorUrl'); - drop(shell.openExternal(`${baseUrl}/#auth=${username}:${password}`)); +ipc.handle('get-art-creator-auth', () => { + const { promise, resolve } = explodePromise(); + strictAssert(mainWindow, 'Main window did not exist'); + + mainWindow.webContents.send('open-art-creator'); + + ipc.handleOnce('open-art-creator', (_event, { username, password }) => { + resolve({ + baseUrl: config.get('artCreatorUrl'), + username, + password, + }); + }); + + return promise; }); ipc.on('show-window', () => { @@ -1300,9 +1314,7 @@ async function openArtCreator() { return; } - if (mainWindow) { - mainWindow.webContents.send('open-art-creator'); - } + await showStickerCreatorWindow(); } let debugLogWindow: BrowserWindow | undefined; @@ -1604,13 +1616,37 @@ if (DISABLE_GPU) { // Some APIs can only be used after this event occurs. let ready = false; app.on('ready', async () => { - updateDefaultSession(session.defaultSession); - - const [userDataPath, crashDumpsPath] = await Promise.all([ + const [userDataPath, crashDumpsPath, installPath] = await Promise.all([ realpath(app.getPath('userData')), realpath(app.getPath('crashDumps')), + realpath(app.getAppPath()), ]); + const webSession = session.fromPartition(STICKER_CREATOR_PARTITION); + + for (const s of [session.defaultSession, webSession]) { + updateDefaultSession(s); + + if (getEnvironment() !== Environment.Test) { + installFileHandler({ + session: s, + userDataPath, + installPath, + isWindows: OS.isWindows(), + }); + } + } + + installWebHandler({ + enableHttp: Boolean(process.env.SIGNAL_ENABLE_HTTP), + session: session.defaultSession, + }); + + installWebHandler({ + enableHttp: true, + session: webSession, + }); + logger = await logging.initialize(getMainWindow); // Write buffered information into newly created logger. @@ -1696,25 +1732,18 @@ app.on('ready', async () => { }); }); - const installPath = await realpath(app.getAppPath()); - addSensitivePath(userDataPath); addSensitivePath(crashDumpsPath); if (getEnvironment() !== Environment.Test) { installFileHandler({ - protocol: electronProtocol, + session: session.defaultSession, userDataPath, installPath, isWindows: OS.isWindows(), }); } - installWebHandler({ - enableHttp: Boolean(process.env.SIGNAL_ENABLE_HTTP), - protocol: electronProtocol, - }); - logger.info('app ready'); logger.info(`starting version ${packageJson.version}`); @@ -2364,7 +2393,7 @@ function handleSgnlHref(incomingHref: string) { } } -ipc.on('install-sticker-pack', (_event, packId, packKeyHex) => { +ipc.handle('install-sticker-pack', (_event, packId, packKeyHex) => { const packKey = Buffer.from(packKeyHex, 'hex').toString('base64'); if (mainWindow) { mainWindow.webContents.send('install-sticker-pack', { packId, packKey }); @@ -2581,6 +2610,57 @@ ipc.handle('executeMenuAction', async (_event, action: MenuActionType) => { } }); +let stickerCreatorWindow: BrowserWindow | undefined; +async function showStickerCreatorWindow() { + if (stickerCreatorWindow) { + stickerCreatorWindow.show(); + return; + } + + const { x = 0, y = 0 } = windowConfig || {}; + + const options = { + x: x + 100, + y: y + 100, + width: 800, + minWidth: 800, + height: 815, + minHeight: 750, + frame: true, + title: getResolvedMessagesLocale().i18n('icu:signalDesktopStickerCreator'), + autoHideMenuBar: true, + backgroundColor: await getBackgroundColor(), + show: false, + webPreferences: { + ...defaultWebPrefs, + partition: STICKER_CREATOR_PARTITION, + nodeIntegration: false, + nodeIntegrationInWorker: false, + sandbox: true, + contextIsolation: true, + preload: join(__dirname, '../ts/windows/sticker-creator/preload.js'), + nativeWindowOpen: true, + }, + }; + + stickerCreatorWindow = new BrowserWindow(options); + + handleCommonWindowEvents(stickerCreatorWindow); + + stickerCreatorWindow.once('ready-to-show', () => { + stickerCreatorWindow?.show(); + }); + + stickerCreatorWindow.on('closed', () => { + stickerCreatorWindow = undefined; + }); + + await safeLoadURL( + stickerCreatorWindow, + await prepareFileUrl([__dirname, '../sticker-creator/dist/index.html']) + ); +} + if (isTestEnvironment(getEnvironment())) { ipc.handle('ci:test-electron:done', async (_event, info) => { if (!process.env.TEST_QUIT_ON_COMPLETE) { diff --git a/app/permissions.ts b/app/permissions.ts index 3927f88bf..9f2a2711a 100644 --- a/app/permissions.ts +++ b/app/permissions.ts @@ -4,7 +4,7 @@ // The list of permissions is here: // https://electronjs.org/docs/api/session#sessetpermissionrequesthandlerhandler -import type { session as ElectronSession } from 'electron'; +import type { session as ElectronSession, Session } from 'electron'; import type { ConfigType } from './base_config'; @@ -75,15 +75,13 @@ export function installPermissionsHandler({ session, userConfig, }: { - session: typeof ElectronSession; + session: Session; userConfig: Pick; }): void { // Setting the permission request handler to null first forces any permissions to be // requested again. Without this, revoked permissions might still be available if // they've already been used successfully. - session.defaultSession.setPermissionRequestHandler(null); + session.setPermissionRequestHandler(null); - session.defaultSession.setPermissionRequestHandler( - _createPermissionHandler(userConfig) - ); + session.setPermissionRequestHandler(_createPermissionHandler(userConfig)); } diff --git a/app/protocol_filter.ts b/app/protocol_filter.ts index 5b1efab32..200d1ab09 100644 --- a/app/protocol_filter.ts +++ b/app/protocol_filter.ts @@ -1,11 +1,7 @@ // Copyright 2018 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only -import type { - protocol as ElectronProtocol, - ProtocolRequest, - ProtocolResponse, -} from 'electron'; +import type { ProtocolRequest, ProtocolResponse, Session } from 'electron'; import { isAbsolute, normalize } from 'path'; import { existsSync, realpathSync } from 'fs'; @@ -130,17 +126,17 @@ function _createFileHandler({ } export function installFileHandler({ - protocol, + session, userDataPath, installPath, isWindows, }: { - protocol: typeof ElectronProtocol; + session: Session; userDataPath: string; installPath: string; isWindows: boolean; }): void { - protocol.interceptFileProtocol( + session.protocol.interceptFileProtocol( 'file', _createFileHandler({ userDataPath, installPath, isWindows }) ); @@ -155,12 +151,13 @@ function _disabledHandler( } export function installWebHandler({ - protocol, + session, enableHttp, }: { - protocol: typeof ElectronProtocol; + session: Session; enableHttp: boolean; }): void { + const { protocol } = session; protocol.interceptFileProtocol('about', _disabledHandler); protocol.interceptFileProtocol('content', _disabledHandler); protocol.interceptFileProtocol('chrome', _disabledHandler); diff --git a/package.json b/package.json index b416a0af3..e850b266e 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "svgo": "svgo --multipass images/**/*.svg", "transpile": "run-p check:types build:esbuild", "check:types": "tsc --noEmit", - "clean-transpile-once": "rimraf sticker-creator app/**/*.js app/*.js ts/**/*.js ts/*.js tsconfig.tsbuildinfo", + "clean-transpile-once": "rimraf sticker-creator/dist app/**/*.js app/*.js ts/**/*.js ts/*.js tsconfig.tsbuildinfo", "clean-transpile": "yarn run clean-transpile-once && yarn run clean-transpile-once", "open-coverage": "open coverage/lcov-report/index.html", "ready": "npm-run-all --print-label clean-transpile generate --parallel lint lint-deps lint-intl test-node test-electron", @@ -493,7 +493,8 @@ "!node_modules/mp4box/**", "node_modules/mp4box/package.json", "node_modules/mp4box/dist/mp4box.all.js", - "!node_modules/.cache" + "!node_modules/.cache", + "sticker-creator/dist/**" ] } } diff --git a/sticker-creator/.eslintignore b/sticker-creator/.eslintignore new file mode 100644 index 000000000..9697ae6d7 --- /dev/null +++ b/sticker-creator/.eslintignore @@ -0,0 +1,5 @@ +vite.config.ts +src/util/protos.* +dist/* +public/* +src/assets/* diff --git a/sticker-creator/.eslintrc.cjs b/sticker-creator/.eslintrc.cjs new file mode 100644 index 000000000..d7d9c5029 --- /dev/null +++ b/sticker-creator/.eslintrc.cjs @@ -0,0 +1,206 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +module.exports = { + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:react/recommended', + 'airbnb-typescript-prettier', + ], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + root: true, + rules: { + 'comma-dangle': [ + 'error', + { + arrays: 'always-multiline', + objects: 'always-multiline', + imports: 'always-multiline', + exports: 'always-multiline', + functions: 'never', + }, + ], + + // No omitting braces, keep on the same line + 'brace-style': ['error', '1tbs', { allowSingleLine: false }], + curly: ['error', 'all'], + + // Always use === and !== except when directly comparing to null + // (which only will equal null or undefined) + eqeqeq: ['error', 'always', { null: 'never' }], + + // it helps readability to put public API at top, + 'no-use-before-define': 'off', + '@typescript-eslint/no-use-before-define': 'off', + + // useful for unused or internal fields + 'no-underscore-dangle': 'off', + + // Temp: We have because TypeScript's `allowUnreachableCode` option is on. + 'no-unreachable': 'error', + + // though we have a logger, we still remap console to log to disk + 'no-console': 'error', + + // consistently place operators at end of line except ternaries + 'operator-linebreak': [ + 'error', + 'after', + { overrides: { '?': 'ignore', ':': 'ignore' } }, + ], + + quotes: [ + 'error', + 'single', + { avoidEscape: true, allowTemplateLiterals: false }, + ], + + 'no-continue': 'off', + 'lines-between-class-members': 'off', + 'class-methods-use-this': 'off', + + // Prettier overrides: + 'arrow-parens': 'off', + 'function-paren-newline': 'off', + 'max-len': [ + 'error', + { + // Prettier generally limits line length to 80 but sometimes goes over. + // The `max-len` plugin doesn’t let us omit `code` so we set it to a + // high value as a buffer to let Prettier control the line length: + code: 999, + // We still want to limit comments as before: + comments: 90, + ignoreUrls: true, + }, + ], + + 'react/jsx-props-no-spreading': 'off', + + // Updated to reflect future airbnb standard + // Allows for declaring defaultProps inside a class + 'react/static-property-placement': ['error', 'static public field'], + + // JIRA: DESKTOP-657 + 'react/sort-comp': 'off', + + // We don't have control over the media we're sharing, so can't require + // captions. + 'jsx-a11y/media-has-caption': 'off', + + // We prefer named exports + 'import/prefer-default-export': 'off', + + // Prefer functional components with default params + 'react/require-default-props': 'off', + + // Empty fragments are used in adapters between backbone and react views. + 'react/jsx-no-useless-fragment': [ + 'error', + { + allowExpressions: true, + }, + ], + + // Our code base has tons of arrow functions passed directly to components. + 'react/jsx-no-bind': 'off', + + // Does not support forwardRef + 'react/no-unused-prop-types': 'off', + + // Not useful for us as we have lots of complicated types. + 'react/destructuring-assignment': 'off', + + 'react/function-component-definition': [ + 'error', + { + namedComponents: 'function-declaration', + unnamedComponents: 'arrow-function', + }, + ], + + 'react/display-name': 'error', + + // Allow returning values from promise executors for brevity. + 'no-promise-executor-return': 'off', + + // Redux ducks use this a lot + 'default-param-last': 'off', + + 'jsx-a11y/label-has-associated-control': ['error', { assert: 'either' }], + + 'no-restricted-syntax': [ + 'error', + { + selector: 'TSInterfaceDeclaration', + message: + 'Prefer `type`. Interfaces are mutable and less powerful, so we prefer `type` for simplicity.', + }, + // Defaults + { + selector: 'ForInStatement', + message: + 'for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.', + }, + { + selector: 'LabeledStatement', + message: + 'Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand.', + }, + { + selector: 'WithStatement', + message: + '`with` is disallowed in strict mode because it makes code impossible to predict and optimize.', + }, + ], + + // Override brace style to enable typescript-specific syntax + 'brace-style': 'off', + '@typescript-eslint/brace-style': [ + 'error', + '1tbs', + { allowSingleLine: false }, + ], + + '@typescript-eslint/array-type': ['error', { default: 'generic' }], + + 'no-restricted-imports': 'off', + '@typescript-eslint/no-restricted-imports': [ + 'error', + { + paths: [ + { + name: 'chai', + importNames: ['expect', 'should', 'Should'], + message: 'Please use assert', + allowTypeImports: true, + }, + ], + }, + ], + + // Overrides recommended by typescript-eslint + // https://github.com/typescript-eslint/typescript-eslint/releases/tag/v4.0.0 + '@typescript-eslint/no-redeclare': 'error', + '@typescript-eslint/no-shadow': 'error', + '@typescript-eslint/no-useless-constructor': ['error'], + 'no-shadow': 'off', + 'no-useless-constructor': 'off', + + // useful for unused parameters + '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], + + // Upgrade from a warning + '@typescript-eslint/explicit-module-boundary-types': 'error', + + '@typescript-eslint/consistent-type-imports': 'error', + + // Already enforced by TypeScript + 'consistent-return': 'off', + + // We build static artifacts, this doesn't matter. + 'import/no-extraneous-dependencies': 'off', + }, +}; diff --git a/sticker-creator/.gitignore b/sticker-creator/.gitignore new file mode 100644 index 000000000..a39ec751b --- /dev/null +++ b/sticker-creator/.gitignore @@ -0,0 +1,31 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +# Caches +.eslintcache +tsconfig.tsbuildinfo + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +# bundle visualizer +stats.html diff --git a/sticker-creator/.prettierignore b/sticker-creator/.prettierignore new file mode 100644 index 000000000..92da45f7c --- /dev/null +++ b/sticker-creator/.prettierignore @@ -0,0 +1,4 @@ +dist/ +public/* +src/assets/* +src/util/protos.* diff --git a/sticker-creator/.prettierrc.cjs b/sticker-creator/.prettierrc.cjs new file mode 100644 index 000000000..26000173a --- /dev/null +++ b/sticker-creator/.prettierrc.cjs @@ -0,0 +1,8 @@ +// Copyright 2018-2020 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +module.exports = { + singleQuote: true, + arrowParens: 'avoid', + trailingComma: 'es5', +}; diff --git a/sticker-creator/index.html b/sticker-creator/index.html new file mode 100644 index 000000000..290b0093c --- /dev/null +++ b/sticker-creator/index.html @@ -0,0 +1,31 @@ + + + + + + + + + + + + Signal Sticker Pack Creator + + +
+ + + diff --git a/sticker-creator/package.json b/sticker-creator/package.json new file mode 100644 index 000000000..12b866ff6 --- /dev/null +++ b/sticker-creator/package.json @@ -0,0 +1,76 @@ +{ + "name": "signal-art-creator", + "private": true, + "version": "0.0.0", + "license": "AGPL-3.0-only", + "author": { + "name": "Signal Messenger, LLC", + "email": "support@signal.org" + }, + "type": "module", + "scripts": { + "dev": "vite", + "build": "npm run build:protos && tsc && vite build --base=./", + "check:types": "tsc --noEmit", + "preview": "vite preview", + "lint": "run-p eslint prettier:format", + "eslint": "eslint --cache .", + "prettier:format": "prettier --list-different --cache --write .", + "prettier:check": "prettier --list-different --cache --check .", + "build:emoji": "cwebp -progress -mt -preset icon -alpha_filter best -alpha_q 20 -pass 10 -q 50 ./node_modules/emoji-datasource-apple/img/apple/sheets-clean/64.png -o ./src/assets/emoji.webp", + "build:protos": "pbjs --target static-module --force-number --no-typeurl --no-delimited --no-verify --no-create --no-convert --wrap es6 --out src/util/protos.js ./protos/*.proto && pbts --out src/util/protos.d.ts src/util/protos.js", + "test": "vitest" + }, + "dependencies": { + "@formatjs/fast-memoize": "1.2.8", + "@indutny/emoji-picker-react": "4.4.9", + "@popperjs/core": "2.11.7", + "@reduxjs/toolkit": "1.9.5", + "@stablelib/x25519": "1.0.3", + "base64-js": "1.5.1", + "classnames": "2.3.2", + "debug": "4.3.4", + "focus-trap-react": "10.1.1", + "memoizee": "0.4.15", + "npm-run-all": "4.1.5", + "p-limit": "4.0.0", + "protobufjs": "7.2.3", + "protobufjs-cli": "1.1.1", + "qrcode-generator": "1.4.4", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-dropzone": "14.2.3", + "react-intl": "6.4.1", + "react-popper": "2.3.0", + "react-redux": "8.0.5", + "react-router-dom": "6.10.0", + "react-sortablejs": "6.1.4", + "redux": "4.2.1", + "reselect": "4.1.8", + "sortablejs": "1.15.0", + "zod": "3.21.4" + }, + "devDependencies": { + "@types/debug": "4.1.7", + "@types/lodash": "4.14.194", + "@types/memoizee": "0.4.8", + "@types/react": "18.0.37", + "@types/react-dom": "18.0.11", + "@types/sortablejs": "1.15.1", + "@typescript-eslint/eslint-plugin": "5.59.0", + "@typescript-eslint/parser": "5.59.0", + "@vitejs/plugin-react": "3.1.0", + "emoji-datasource-apple": "14.0.0", + "eslint": "8.38.0", + "eslint-config-airbnb-typescript-prettier": "5.0.0", + "eslint-config-prettier": "8.8.0", + "eslint-plugin-react": "7.32.2", + "happy-dom": "8.9.0", + "prettier": "2.8.7", + "rollup-plugin-visualizer": "5.9.0", + "sass": "1.62.0", + "typescript": "5.0.4", + "vite": "4.2.2", + "vitest": "0.30.1" + } +} diff --git a/sticker-creator/protos/Provisioning.proto b/sticker-creator/protos/Provisioning.proto new file mode 100644 index 000000000..f0e0ff938 --- /dev/null +++ b/sticker-creator/protos/Provisioning.proto @@ -0,0 +1,20 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +syntax = "proto3"; + +option go_package = "internal/pkg/messages"; + +message ProvisioningToken { + optional string token = 1; +} + +message ProvisioningEnvelope { + optional bytes publicKey = 1; + optional bytes ciphertext = 2; +} + +message ProvisioningMessage { + optional string username = 1; + optional string password = 2; +} diff --git a/sticker-creator/protos/Stickers.proto b/sticker-creator/protos/Stickers.proto new file mode 100644 index 000000000..272393f26 --- /dev/null +++ b/sticker-creator/protos/Stickers.proto @@ -0,0 +1,18 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +syntax = "proto3"; + +option go_package = "internal/pkg/messages"; + +message StickerPack { + message Sticker { + optional uint32 id = 1; + optional string emoji = 2; + } + + optional string title = 1; + optional string author = 2; + optional Sticker cover = 3; + repeated Sticker stickers = 4; +} diff --git a/sticker-creator/src/assets/emoji.webp b/sticker-creator/src/assets/emoji.webp new file mode 100644 index 000000000..8838d2d28 Binary files /dev/null and b/sticker-creator/src/assets/emoji.webp differ diff --git a/sticker-creator/src/assets/icons/add-emoji-outline-24.svg b/sticker-creator/src/assets/icons/add-emoji-outline-24.svg new file mode 100644 index 000000000..2568bf6f7 --- /dev/null +++ b/sticker-creator/src/assets/icons/add-emoji-outline-24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/compose-outline-24.svg b/sticker-creator/src/assets/icons/compose-outline-24.svg new file mode 100644 index 000000000..54737c2eb --- /dev/null +++ b/sticker-creator/src/assets/icons/compose-outline-24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-activity-outline-20.svg b/sticker-creator/src/assets/icons/emoji-activity-outline-20.svg new file mode 100644 index 000000000..ef4d1823e --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-activity-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-activity-solid-20.svg b/sticker-creator/src/assets/icons/emoji-activity-solid-20.svg new file mode 100644 index 000000000..157b5d665 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-activity-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-animal-outline-20.svg b/sticker-creator/src/assets/icons/emoji-animal-outline-20.svg new file mode 100644 index 000000000..54a54c5d2 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-animal-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-animal-solid-20.svg b/sticker-creator/src/assets/icons/emoji-animal-solid-20.svg new file mode 100644 index 000000000..3f5f8f894 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-animal-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-flag-outline-20.svg b/sticker-creator/src/assets/icons/emoji-flag-outline-20.svg new file mode 100644 index 000000000..c38e5ac9d --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-flag-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-flag-solid-20.svg b/sticker-creator/src/assets/icons/emoji-flag-solid-20.svg new file mode 100644 index 000000000..facb87db9 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-flag-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-food-outline-20.svg b/sticker-creator/src/assets/icons/emoji-food-outline-20.svg new file mode 100644 index 000000000..da2912c05 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-food-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-food-solid-20.svg b/sticker-creator/src/assets/icons/emoji-food-solid-20.svg new file mode 100644 index 000000000..0d5e961bd --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-food-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-object-outline-20.svg b/sticker-creator/src/assets/icons/emoji-object-outline-20.svg new file mode 100644 index 000000000..56d900568 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-object-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-object-solid-20.svg b/sticker-creator/src/assets/icons/emoji-object-solid-20.svg new file mode 100644 index 000000000..e705af9da --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-object-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-smiley-outline-20.svg b/sticker-creator/src/assets/icons/emoji-smiley-outline-20.svg new file mode 100644 index 000000000..2801db26b --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-smiley-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-smiley-outline-24.svg b/sticker-creator/src/assets/icons/emoji-smiley-outline-24.svg new file mode 100644 index 000000000..89f140973 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-smiley-outline-24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-smiley-solid-20.svg b/sticker-creator/src/assets/icons/emoji-smiley-solid-20.svg new file mode 100644 index 000000000..a7d2bcc2e --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-smiley-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-smiley-solid-24.svg b/sticker-creator/src/assets/icons/emoji-smiley-solid-24.svg new file mode 100644 index 000000000..d66bc4dcb --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-smiley-solid-24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-symbol-outline-20.svg b/sticker-creator/src/assets/icons/emoji-symbol-outline-20.svg new file mode 100644 index 000000000..5ac216e01 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-symbol-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-symbol-solid-20.svg b/sticker-creator/src/assets/icons/emoji-symbol-solid-20.svg new file mode 100644 index 000000000..93f29ad06 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-symbol-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-travel-outline-20.svg b/sticker-creator/src/assets/icons/emoji-travel-outline-20.svg new file mode 100644 index 000000000..1fc8c013f --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-travel-outline-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/emoji-travel-solid-20.svg b/sticker-creator/src/assets/icons/emoji-travel-solid-20.svg new file mode 100644 index 000000000..a6fa8eef1 --- /dev/null +++ b/sticker-creator/src/assets/icons/emoji-travel-solid-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/search-16.svg b/sticker-creator/src/assets/icons/search-16.svg new file mode 100644 index 000000000..7335bc973 --- /dev/null +++ b/sticker-creator/src/assets/icons/search-16.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/x-20.svg b/sticker-creator/src/assets/icons/x-20.svg new file mode 100644 index 000000000..f3db76fac --- /dev/null +++ b/sticker-creator/src/assets/icons/x-20.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/icons/x-24.svg b/sticker-creator/src/assets/icons/x-24.svg new file mode 100644 index 000000000..143ecca2c --- /dev/null +++ b/sticker-creator/src/assets/icons/x-24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/assets/locales/af-ZA/messages.json b/sticker-creator/src/assets/locales/af-ZA/messages.json new file mode 100644 index 000000000..a755a1a1e --- /dev/null +++ b/sticker-creator/src/assets/locales/af-ZA/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Plakkerpakket-skepper" + }, + "index--create-sticker-pack" : { + "message" : "Skep 'n nuwe plakkerpakket" + }, + "SignIn--title" : { + "message" : "Skep 'n plakkerpakket", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Net soos met alles verder in Signal, is plakkers ook geënkripteer. Gebruik hierdie hulpmiddel om jou eie pasgemaakte plakkerpakkette te skep.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Aantekenkode", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Maak Signal Desktop oop om te begin", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Jammer, jou blaaier word nie ondersteun nie. Maak asseblief hierdie skakel in Firefox of Chrome oop", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Kanselleer" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Geen emoji gevind nie", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Soek emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Velkleur $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Gesiggies & mense", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Diere & die natuur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Kos & drank", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Reis & plekke", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktiwiteite", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Voorwerpe", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simbole", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Vlae", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal-kunswerk-skepper", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal-plakkerpakket-skepper", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Riglyne vir Plakkerpakket-skepper", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klik hier om beelde by te voeg of neer te laat", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Laat beelde hier neer", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Plakkerpakket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Plakkerpakket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Kanselleer", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopieer", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Volgende", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Terug", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Voeg jou plakkers by", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Verwyder beeld", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klik of sleep/laat 'n lêer hier neer om 'n plakker by te voeg", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Plakkers moet in PNG-, APNG- of WebP-formaat wees met 'n deursigtige agtergrond en 512x512 pixels. Die aanbevole kantruimte is 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Bekyk kantruimtes", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Voeg 'n emoji by elke plakker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dit stel ons in staat om vir jou plakkers voor te stel terwyl jy boodskappe stuur.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Net nog 'n paar besonderhede…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Benoem jou plakkerpakket", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Outeur", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Voer 'n naam in waaronder jy jou plakkers kan indien", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Voorbladbeeld", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Dit is die beeld wat gesien sal word wanneer jy jou plakkerpakket deel", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Is jy seker jy wil jou plakkerpakket oplaai?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Laai op", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Jy sal nie meer in staat wees om veranderinge te maak of te skrap na jy 'n plakkerpakket gemaak het nie.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Skep tans jou plakkerpakket", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ van $total$ opgelaai", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Baie geluk! Jy het 'n plakkerpakket geskep.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Kry toegang tot jou nuwe plakkers deur die plakkerikoon, of deel met jou vriende met behulp van die skakel hieronder.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Gebruik die hutsetiket $hashtag$ om ander mense te help om die URLs vir enige persoonlike plakkerpakkette wat jy vir almal toeganklik wil maak, te vind.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Plakkerpakket-URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installeer", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Skep 'n ander plakkerpakket", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Kyk na hierdie nuwe plakkerpakket wat ek vir Signal geskep het. #maakprivaatheidplak", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 beeld bygevoeg} other {{count,number} prent(e) bygevoeg}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Geanimeerde kunswerk word nie tans ondersteun nie", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Die foto wat neergelaat is, is te groot", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Beeldverwerking-fout", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Geanimeerde PNG-beelde moet vierkantig wees", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Geanimeerde PNG-beelde moet permanent in 'n lus aanhou loop", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Geanimeerde PNG-beeld se afmetings is te groot", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Geanimeerde PNG-beeld se afmetings is te klein", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Beeldoplaaifout: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Kan nie aan bediener koppel nie: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kon nie beelde oplaai nie weens verifiëringsbesonderhede wat verval het. Maak asseblief die webwerf weer oop uit Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Skakel gekopieer", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "My plakker in ligte tema", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "My plakker in donker tema", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Stel asseblief Signal op jou foon en tuisskerm in om die Plakkerpakket-skepper te gebruik", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Pasmaking van reaksies", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-alias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ar/messages.json b/sticker-creator/src/assets/locales/ar/messages.json new file mode 100644 index 000000000..c0928bb9a --- /dev/null +++ b/sticker-creator/src/assets/locales/ar/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "مُنشئ فن الملصقات" + }, + "index--create-sticker-pack" : { + "message" : "إنشاء حزمة ملصقات جديدة" + }, + "SignIn--title" : { + "message" : "إنشاء حزمة ملصقات", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "تمامًا كما هو الحال مع كل شيء آخر في Signal، يتم تشفير الملصقات أيضًا. استعِن بهذه الأداة لتُنشأ حزمة الملصقات الخاصة بك.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "رمز تسجيل الدخول", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "افتح تطبيق Signal Desktop للبدء", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "عذرًا، متصفحك غير مدعوم. يُرجى فتح هذا الرابط في Firefox أو Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "إلغاء" + }, + "minutesAgo" : { + "message" : "منذ $minutes$ دقائق", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "لم يعثر على أية وجوه تعبيرية", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "البحث عن وجه مُعبِّر", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "لون البشرة $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "الرموز التعبيرية والأشخاص", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "الحيوانات والطبيعة", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "الطعام والشراب", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "السفر والأماكن", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "الأنشطة", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "الأشياء", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "الرموز", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "الأعلام", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "مُنشئ فن Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "مُنشيء حزمة الملصقات لـ Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "شعار Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "إرشادات حول مُنشيء حزمة الملصقات", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "يُرجى إضافة الصور أو إلقاءها هنا", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "يُرجى إلقاء الصور هنا", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "حزمة الملصقات", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "حزمة الملصقات", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "إلغاء", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "نسخ", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "فيسبوك", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "تويتر", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "واتساب", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "التالي", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "رجوع", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "أضف ملصقاتك", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "إزالة الصورة", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "انقر أو اسحب/ألقى ملفًا لإضافة ملصق", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "يَجب أن تكون الملصقات بصيغة PNG أو APNG أو WebP وبخلفية شفافة ومقاس 512×512 بِكْسل. طول الهامش المُوصى بها هو 16 بِكْسل.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "عرض الهوامش", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "إضافة وجه مُعبِّر لكل ملصق", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "يسمح لنا هذا باقتراح ملصقات لك أثناء التراسُل.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "تبقّت فقط بعض التفاصيل الإضافية…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "العنوان", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "إعطاء اسم لحزمة ملصقاتك", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "المؤلف", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "أدخل اسمًا لإرسال ملصقاتك تحته", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "صورة الغلاف", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "هذه هي الصورة التي ستظهر عند مشاركة حزمة ملصقاتك", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "أأنت على يقين من رغبتك رفع حزمة ملصقاتك؟", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "رفع", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "سَيتعذر عليك التعديل أو الحذف بعد إنشاء حزمة الملصقات.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "يَجري إنشاء حزمة ملصقاتك", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "تم رفع $count$ من $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "تهانينا! لقد أنشأت حزمة ملصقات.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "يُرجى الوصول إلى ملصقاتك الجديدة من خلال أيقونة الملصق، أو مشاركتها مع أصدقائك باستخدام الوصلة أدناه.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "يُرجى استخدام الهاشتاغ $hashtag$ لمُساعدة الآخرين على العثور على عناوين أية حزم ملصقات مُخصّصة المراد جعلها متاحة للعموم.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "عنوان صفحة حزمة الملصقات", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "تثبيت", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "إنشاء حزمة ملصقات أخرى", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ألقوا نظرة على هذه الحزمة من الملصقات الجديدة التي صممتُها ﻷجل Signal. #اجعل_الخصوصية_متوفرة_دائماً", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, zero {تمت إضافة {count,number} صورة} one {تمت إضافة {count,number} صورة واحدة} two {تمت إضافة {count,number} صورتين} few {تمت إضافة {count,number} صور} many {تمت إضافة {count,number} صورة} other {تمت إضافة {count,number} صورة}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "لا ندعم حالياً الملصقات المتحركة", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "الصورة التي تم وضعها كبيرة جداً", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "فشلت معالجة الصورة", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "يَجب أن تكون صور PNG المتحركة داخل إطار مربع", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "يَجب ألا تتوقف الصور المتحركة أبدًا", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "أبعاد صورة PNG المتحركة كبيرة جدًا", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "أبعاد صورة PNG المتحركة صغيرة جدًا", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "فشل في تحميل الصور: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "لا يمكن الاتصال بالخادم: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "فشل تحميل الصور بسبب انتهاء صلاحية بيانات الاعتماد. يُرجى إعادة فتح موقع الويب من Signal Desktop مرة أخرى.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "نُسخَ الرابط", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ملصقي خلال السمة النهارية", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ملصقي خلال السمة الليلية", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "يُرجى إعداد Signal في هاتفك وفي الحاسوب لاستخدام مُنشيء حزم الملصقات", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "وجه مُعبِّر", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "تخصيص التفاعلات", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "الاسم المُستعار للرموز التعبيرية", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/az-AZ/messages.json b/sticker-creator/src/assets/locales/az-AZ/messages.json new file mode 100644 index 000000000..9dc4a4ee3 --- /dev/null +++ b/sticker-creator/src/assets/locales/az-AZ/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Stiker təsvir yaradıcısı" + }, + "index--create-sticker-pack" : { + "message" : "Yeni stiker paketi yarat" + }, + "SignIn--title" : { + "message" : "Bir stiker paketi yarat", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal-dakı hər şeydə olduğu kimi, stikerlər də şifrəlidir. Sizə məxsus fərdi stiker paketləri yaratmaq üçün bu alətdən istifadə edin.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Giriş kodu", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Başlamaq üçün Signal Desktop-u açın", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Üzr istəyirik, brauzeriniz dəstəklənmir. Bu keçidi Firefox və ya Chrome-da açın", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Ləğv et" + }, + "minutesAgo" : { + "message" : "$minutes$dəq", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Heç bir emoji tapılmadı", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Emoji axtar", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Dəri tonu $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Təbəssüm və insanlar", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Heyvanlar və təbiət", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Qida və içki", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Səyahət və məkanlar", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Fəaliyyətlər", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Obyektlər", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simvollar", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bayraqlar", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal təsvir yaradıcısı", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal stiker paketi yaratma", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal loqosu", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Stiker paketi yaratma təlimatları", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Əlavə etmək üçün klikləyin və ya təsvirləri dartaraq buraya buraxın", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Təsvirləri bura gətir", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Stiker paketi", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Stiker paketi", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Ləğv et", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopyala", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Növbəti", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Geri", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Stikerlərinizi əlavə edin", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Şəkli sil", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Bir stiker əlavə etmək üçün klikləyin və ya faylı dartaraq buraya buraxın", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Stikerlər, 512x512 pikselində şəffaf bir arxa planda, PNG, APNG və ya WebP formatlarından birində olmalıdır. Tövsiyə edilən kənar boşluq 16 pikseldir.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Kənar boşluqlarına bax", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Hər stikerə bir emoji əlavə edin", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Bu, mesajlaşmağa başladığınız zaman stikerlər təklif etməyimizə imkan verir.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Çox az qaldı...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Başlıq", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Stiker paketinizi adlandırın", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Müəllif", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Stikerlərinizi hansı ad altında təqdim edəcəyinizi seçin", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Örtük şəkli", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Bu, stiker paketinizi paylaşarkən görünəcək təsvirdir.", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Stiker paketinizi yükləmək istədiyinizə əminsiniz?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Yüklə", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Bir stiker paketi yaratdıqdan sonra düzəliş edə və ya silə bilməyəcəksiniz.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Stiker paketiniz yaradılır", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ /$total$ yükləndi", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Təbriklər! Bir stiker paketi yaratdınız.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Yeni stikerlərinizə stiker piktoqramı vasitəsilə daxil olun və ya aşağıdakı bağlantıdan istifadə edərək dostlarınızla paylaşın.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "İctimaiyyətə açmaq istədiyiniz istənilən xüsusi stiker paketi URL-lərini hər kəsin tapa bilməsi üçün $hashtag$ heşteq etiketlərindən istifadə edin.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Stiker paketinin URL-i", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Quraşdır", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Başqa stiker paketi yarat", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal üçün yaratdığım yeni stiker paketinə nəzər salın. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 təsvir əlavə edildi} other {{count,number} təsvir əlavə edildi}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animasiyalı təsvirlər hazırda dəstəklənmir", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Yükləmək istədiyiniz təsvir çox böyükdür", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Təsvir emalı xətası", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animasiyalı PNG təsvirləri kvadrat olmalıdır", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animasiyalı təsvirlər hər tərəfə çevrilə bilməlidir", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animasiyalı PNG təsvirin ölçüləri çox böyükdür", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animasiyalı PNG təsvirin ölçüləri çox kiçikdir", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Şəkilləri yükləyərkən xəta baş verdi: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Serverə qoşulmaq mümkün deyil: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "İdentifikasiya göstəricilərinin müddəti bitdiyi üçün təsvirlər yüklənmədi. Signal Desktop-dan veb-saytı yenidən açın.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Keçid kopyalandı", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Stikerim açıq rəngli temadadır", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Stikerim tünd rəngli temadadır", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Stiker paket yaradıcısından istifadə etmək üçün Signal-ı telefonunuzda və masaüstündə quraşdırın", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Reaksiyaları fərdiləşdirin", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emojinin şərti adı", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/bg-BG/messages.json b/sticker-creator/src/assets/locales/bg-BG/messages.json new file mode 100644 index 000000000..8474f56c4 --- /dev/null +++ b/sticker-creator/src/assets/locales/bg-BG/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Създател на изкуство за стикери" + }, + "index--create-sticker-pack" : { + "message" : "Създайте нов пакет стикери" + }, + "SignIn--title" : { + "message" : "Създайте пакет със стикери", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Точно както с всичко останало в Signal, стикерите също са криптирани. Използвайте този инструмент, за да създадете свои собствени персонализирани пакети стикери.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Код за вписване", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Отворете уебсайта Signal, за да започнете", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "За съжаление вашият браузър не се поддържа. Моля, отворете този линк във Firefox или Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Отказ" + }, + "minutesAgo" : { + "message" : "$minutes$ минути", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Не бяха открити емотикони", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Търсете емотикони", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Цвят на кожата $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Усмивки и хора", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Животни и природа", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Храни и напитки", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Пътуване и места", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Дейности", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Обекти", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Символи", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Знамена", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Създател на изкуство за Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Създаване на пакет със Signal стикери", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Лого на Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Указания за създаване на пакет стикери", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Натиснете, за да добавите или пуснете изображения тук", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Пуснете изображения тук", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Пакет със стикери", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Пакет със стикери", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Отказ", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Копирайте", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Напред", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Обратно", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Добавете стикери", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Премахване на изображението", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Кликнете или плъзнете/пуснете файл, за да добавите стикер", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Стикерите трябва да са в PNG, APNG или WebP формат, с прозрачен фон и 512x512 пиксела. Препоръчителният отстъп е 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Преглед на отстъпите", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Добави емотикона към всеки стикер", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Това ни позволява да предлагаме стикери докато чатите.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Още няколко детайла…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Заглавие", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Дайте име на вашия пакет стикери", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Въведете име, с което да запазите стикерите си", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Изображение на корицата", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Това е изображението, което ще се показва, когато споделяте вашия пакет със стикери", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Сигурни ли сте, че искате да качите пакета със стикери?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Качване", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "След създаването на пакета със стикери вече няма да можете да редактирате или изтривате.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Вашият пакет със стикери се създава", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ от $total$ качени", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Честито! Вие създадохте пакет със стикери.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Отворете новите ви стикери от иконата за стикери или споделете с вашите приятели чрез линка по-долу.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Използвайте хаштага $hashtag$, за да помогнете на хората да намерят адресите на пакети със стикери, които искате да споделите публично.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL на пакета със стикери", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Инсталирай", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Създайте друг пакет със стикери", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Разгледай новия пакет със стикери, който създадох за Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 изображение е добавено} other {{count,number} изображения са добавени}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "В момента не се поддържат анимирани стикери", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Пуснатото изображение е твърде голямо", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Грешка при обработката на изображението", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимираните PNG изображения трябва да са квадратни", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимираните изображения трябва да се повтарят постоянно", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Размерите на анимираното PNG изображение са твърде големи", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Размерите на анимираното PNG изображение са твърде малки", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Грешка при качване на изображения: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Неуспешна връзка със сървъра: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Неуспешно качване на изображения поради изтекла идентификация. Моля, отворете уебсайта от Signal Desktop отново.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Линкът е копиран", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Моят стикер в светла тема", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Моят стикер в тъмна тема", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Моля, настройте Signal на вашия телефон и настолен компютър, за да създавате пакети със стикери", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Емотикони", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Персонализирайте реакциите", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Псевдоним на емотикон", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/bn-BD/messages.json b/sticker-creator/src/assets/locales/bn-BD/messages.json new file mode 100644 index 000000000..329bd5ae3 --- /dev/null +++ b/sticker-creator/src/assets/locales/bn-BD/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "স্টিকার আর্ট ক্রিয়েটর" + }, + "index--create-sticker-pack" : { + "message" : "নতুন স্টিকার প্যাক তৈরি করুন" + }, + "SignIn--title" : { + "message" : "একটি স্টিকার প্যাক তৈরি করুন", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal-এর অন্য সব কিছুর মতোই, স্টিকারগুলোও এনক্রিপ্ট করা। আপনার নিজস্ব কাস্টম স্টিকার প্যাক তৈরি করতে এই টুলটি ব্যবহার করুন।", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "সাইন ইন কোড", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "শুরু করতে Signal ডেস্কটপ খুলুন", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "দুঃখিত, আপনার ব্রাউজার এটি সমর্থন করে না। অনুগ্রহ করে এই লিংকটি Firefox বা Chrome-এ খুলুন", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "বাতিল করুন" + }, + "minutesAgo" : { + "message" : "$minutes$মি.", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "কোনো ইমোজি পাওয়া যায়নি", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ইমোজি অনুসন্ধান করুন", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "স্কিনের বর্ণ $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "স্মাইলি এবং মানুষ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "প্রাণী ও প্রকৃতি", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "খাবার ও পানীয়", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ভ্রমণ ও স্থান", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "কার্যক্রম", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "বস্তু", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "প্রতীক", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "পতাকা", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal আর্ট ক্রিয়েটর", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal স্টিকার প্যাক ক্রিয়েটর", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal লোগো", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "স্টিকার প্যাক ক্রিয়েটর সম্পর্কিত নির্দেশিকা", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ছবি যোগ করতে বা ড্রপ করতে এখানে ক্লিক করুন", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "এখানে ছবি ড্রপ করুন", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "স্টিকার প্যাক", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "স্টিকার প্যাক", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "বাতিল করুন", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "কপি করুন", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "পরবর্তী", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "ফিরে যান", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "আপনার স্টিকার যোগ করুন", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ছবি মুছে ফেলুন", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "একটি স্টিকার যোগ করতে একটি ফাইল ক্লিক করুন বা টেনে আনুন/ড্রপ করুন", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "স্টিকারগুলো অবশ্যই PNG, APNG, বা WebP ফরম্যাটে থাকতে হবে এবং স্বচ্ছ ব্যাকগ্রাউন্ড ও 512x512 পিক্সেল বিশিষ্ট হতে হবে। সুপারিশকৃত মার্জিন 16px।", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "মার্জিন দেখুন", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "প্রতিটি স্টিকারে একটি ইমোজি যোগ করুন", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "আপনি ম্যাসেজ করার সময় এটি আপনাকে স্টিকারের পরামর্শ দেওয়ার জন্য আমাদেকে অনুমতি দেয়।", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "আর অল্প কিছু বিবরণ...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "শিরোনাম", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "আপনার স্টিকার প্যাকের নাম দিন", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "প্রস্তুতকারক", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "নিচে আপনার স্টিকার জমা দিতে একটি নাম লিখুন", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "কভার ছবি", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "আপনি আপনার স্টিকার প্যাক শেয়ার করার সময় এই ছবিটি প্রদর্শিত হবে", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "আপনি কি আপনার স্টিকার প্যাক আপলোড করতে চাওয়ার ব্যাপারে নিশ্চিত?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "আপলোড করুন", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "স্টিকার প্যাক তৈরি করার পর আপনি আর সেটি এডিট করতে বা মুছতে পারবেন না।", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "আপনার স্টিকার প্যাক তৈরি করা", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$টির মধ্যে $count$টি আপলোড হয়েছে", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "অভিনন্দন! আপনি একটি স্টিকার প্যাক তৈরি করেছেন।", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "স্টিকার আইকন দিয়ে আপনার নতুন স্টিকারগুলো অ্যাক্সেস করুন অথবা নিচের লিংকটি ব্যবহার করে আপনার বন্ধুদের সাথে এটি শেয়ার করুন।", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "আপনি যেসব কাস্টম স্টিকার প্যাক সকলের জন্য অ্যাক্সেসযোগ্য করতে চান সেগুলোর URL যাতে অন্যরা খুঁজে পায় সেজন্য $hashtag$ হ্যাশট্যাগটি ব্যবহার করুন।", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "স্টিকার প্যাকের URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ইনস্টল করুন", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "অন্য একটি স্টিকার প্যাক তৈরি করুন", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal-এর জন্য তৈরি করা আমার এই নতুন স্টিকার প্যাকটি দেখুন। #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1টি ছবি যোগ করা হয়েছে} other {{count,number}টি ছবি যোগ করা হয়েছে}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "অ্যানিমেট করা আর্ট বর্তমানে সমর্থন করে না", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ড্রপ করা ছবিটি অনেক বেশি বড়", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ছবিটি প্রক্রিয়াকরণে ত্রুটি হয়েছে", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "অ্যানিমেট করা PNG ছবি অবশ্যই বর্গাকার হতে হবে", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "অ্যানিমেট করা ছবিগুলো অবশ্যই সবসময়ের জন্য লুপ হতে থাকবে", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "অ্যানিমেট করা PNG ছবিগুলোর মাত্রা অনেক বেশি বড়", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "অ্যানিমেট করা PNG ছবিগুলোর মাত্রা অনেক বেশি ছোট", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ছবি আপলোড করার সময় ত্রুটি হয়েছে: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "সার্ভারের সাথে সংযোগ করা যাচ্ছে না: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "মেয়াদ উত্তীর্ণ পরিচয়ের তথ্যের কারণে ছবি আপলোড করা সফল হয়নি। অনুগ্রহ করে Signal ডেস্কটপ থেকে ওয়েবসাইটটি আবারো খুলুন।", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "লিংক কপি করা হয়েছে", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "আমার স্টিকার লাইট থিমে রয়েছে", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "আমার স্টিকার গাঢ় থিমে রয়েছে", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "স্টিকার প্যাক ক্রিয়েটর ব্যবহার করতে অনুগ্রহ করে আপনার ফোন ও ডেস্কটপে Signal সেট আপ করুন", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ইমোজি", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "প্রতিক্রিয়া কাস্টমাইজ করুন", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ছদ্মনামের ইমোজি", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/bs-BA/messages.json b/sticker-creator/src/assets/locales/bs-BA/messages.json new file mode 100644 index 000000000..253f0f4dd --- /dev/null +++ b/sticker-creator/src/assets/locales/bs-BA/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Sticker Art Creator" + }, + "index--create-sticker-pack" : { + "message" : "Kreirajte novi paket naljepnica" + }, + "SignIn--title" : { + "message" : "Kreirajte paket naljepnica", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Kao i sve ostalo u Signalu, i naljepnice su šifrirane. Koristite ovaj alat da kreirate vlastite prilagođene pakete naljepnica.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kȏd za prijavu", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Da počnete, otvorite Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Žao nam je, vaš pretraživač nije podržan. Otvorite ovu vezu u Firefoxu ili Chrome-u", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Otkaži" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nije pronađena nijedna emoji sličica", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Pretražite emoji sličice", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Boja kože $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smješko i osobe", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Životinje i priroda", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Hrana i piće", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Putovanje i mjesta", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivnosti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Predmeti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Zastave", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Art kreator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal kreator paketa naljepnica", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logotip Signala", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Smjernice za kreator paketa naljepnica", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliknite da dodate ili ispustite slike ovdje", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Ispustite slike ovdje", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paket naljepnica", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paket naljepnica", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Otkaži", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiraj", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Dalje", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Natrag", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Dodajte svoje naljepnice", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Ukloni sliku", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kliknite ili prevucite/ispustite datoteku da dodate naljepnicu", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Naljepnice moraju biti u PNG, APNG ili WebP formatu s providnom pozadinom i 512x512 piksela. Preporučena margina je 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Prikaži margine", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Dodajte emoji sličicu na svaku naljepnicu", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Na taj način vam možemo predložiti naljepnice dok razmjenjujete poruke.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Još samo nekoliko detalja…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Naslov", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Dajte naziv paketu naljepnica", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Unesite naziv pod kojim ćete poslati svoje naljepnice", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Naslovna slika", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ova slika će se pojaviti kada podijelite paket naljepnica", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Jeste li sigurni da želite preuzeti paket naljepnica?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Preuzmi", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Kada kreirate paket naljepnica više nećete moći uređivati niti brisati naljepnice.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Kreiranje paketa naljepnica", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Preuzeto: $count$ od $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Čestitamo! Kreirali ste paket naljepnica.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Pristupite novim naljepnicama pomoću ikone naljepnice, ili ih dijelite s prijateljima pomoću linka u nastavku.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Koristite hashtag $hashtag$ da druge osobe lakše pronađu URL-ove za bilo koji prilagođeni paket naljepnica za koji želite da bude javno dostupan.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL paketa naljepnica", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instaliraj", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Kreirajte drugi paket naljepnica", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Pogledaj ovaj novi paket naljepnica koji sam kreirao/la za Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Dodana je 1 slika} few {Dodane su {count,number} slike} many {Dodano je {count,number} slika} other {Dodano je {count,number} slika}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animirana umjetnost trenutno nije podržana", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Slika koju ste ispustili je prevelika", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Greška prilikom obrade slike", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animirane PNG slike moraju biti kvadratnog oblika", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animirane slike moraju se stalno ponavljati", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimenzije animirane PNG slike su prevelike", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimenzije animirane PNG slike su premale", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Greška prilikom otpremanja slika: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nije moguće povezati se sa serverom: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Otpremanje slika nije uspjelo zbog isteklih akreditiva. Ponovo otvorite web stranicu sa Signal Desktopa.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link je kopiran", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moja naljepnica u svijetloj temi", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moja naljepnica u tamnoj temi", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Postavite Signal na telefonu i računaru da koristite Kreator paketa naljepnica", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji sličice", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Prilagodi reakcije", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Pseudonim emoji sličice", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ca/messages.json b/sticker-creator/src/assets/locales/ca/messages.json new file mode 100644 index 000000000..caafa9f21 --- /dev/null +++ b/sticker-creator/src/assets/locales/ca/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Creador d'adhesius" + }, + "index--create-sticker-pack" : { + "message" : "Crear nou paquet d'adhesius" + }, + "SignIn--title" : { + "message" : "Crear nou paquet d'adhesius", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Com tot a Signal, els adhesius també estan encriptats. Utilitza aquesta eina per crear els teus propis paquets d'adhesius personalitzats.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Codi d'inici de sessió", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Per començar, obre Signal per a Escriptori", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Ho sentim, el teu navegador no és compatible. Obre aquest enllaç a Firefox o Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cancel·la" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "No s'ha trobat cap emoticona", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Cerca una emoticona", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "To de la pell $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Emoticones somrients i gent", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animals i natura", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Menjar i beure", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viatges i llocs", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Activitats", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objectes", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Símbols", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Banderes", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Creador artístic de Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Creador de paquets d'adhesius", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo de Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Guia del creador de paquets d'adhesius", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Clica aquí per a afegir o deixar anar imatges.", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Deixa anar imatges aquí", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paquet d'adhesius", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paquet d'adhesius", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cancel·la", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copia", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Següent", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Enrere", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Afegeix els teus adhesius", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Eliminar imatge", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Fes clic o arrossega un fitxer per a afegir un adhesiu", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Els adhesius han de tenir el format PNG, APNG o WebP amb un fons transparent i 512 x 512 píxels. El marge recomanat és de 16 píxels.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Veure marges", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Afegeix una emoticona a cada adhesiu", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Això ens permet suggerir-vos adhesius a mesura que esteu fent missatges.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Uns quants detalls més…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Títol", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Posa-li nom al teu paquet d'adhesius", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Introdueix un àlies per als teus adhesius", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imatge de la coberta", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Aquesta és la imatge que es mostrarà quan comparteixis el paquet d'adhesius.", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Segur que vols pujar el paquet d'adhesius?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Pujar", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Ja no podràs fer modificacions o supressions després de crear un paquet d'adhesius.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Creant paquet d'adhesius", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ de $total$ carregat", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Enhorabona! Has creat un paquet d'adhesius.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accedeix als adhesius nous mitjançant la icona de l’adhesiu o comparteix-los amb les amistats amb l’enllaç següent.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Utilitza l'etiqueta $hashtag$ per a ajudar altres persones a trobar els URL de qualsevol paquet d'adhesius personalitzat que voldries fer accessible al públic.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL del paquet d'adhesius", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instal·la", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Crea un altre paquet d'adhesius", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Mireu aquest nou paquet d'adhesius que he creat per a Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imatge afegida} other {{count,number} imatges afegides}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Les imatges animades no són compatibles en aquest moment", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "La imatge és massa gran", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Error al processar la imatge", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Les imatges animades en PNG han de ser quadrades", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Les imatges animades han de tenir un cicle infinit", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Les dimensions de les imatges animades en PNG són excessives", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Les dimensions de les imatges animades en PNG són massa petites", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Error carregant les imatges: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "No s'ha pogut connectar al servidor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "No s'han pogut carregar les imatges a causa de les credencials caducades. Si us plau, torna a obrir el lloc web des de Signal per a Escriptori.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Enllaç copiat", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "L'adhesiu en tema clar", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "L'adhesiu en tema fosc", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Configura Signal tant al telèfon com a l'Escriptori per poder utilitzar el Creador de paquets d'adhesius", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoticones", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalització de reaccions", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nom de l'emoticona", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/cs/messages.json b/sticker-creator/src/assets/locales/cs/messages.json new file mode 100644 index 000000000..3651e9162 --- /dev/null +++ b/sticker-creator/src/assets/locales/cs/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Nástroj pro tvorbu nálepek" + }, + "index--create-sticker-pack" : { + "message" : "Vytvořit nový balíček nálepek" + }, + "SignIn--title" : { + "message" : "Vytvořit balíček nálepek", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Stejně jako vše ostatní v aplikaci Signal jsou i nálepky šifrovány. Pomocí tohoto nástroje můžete vytvářet vlastní balíčky nálepek.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Přihlašovací kód", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Chcete-li začít, otevřete aplikaci Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Je nám líto, ale váš prohlížeč není podporován. Otevřete prosím tento odkaz v prohlížeči Firefox nebo Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Zrušit" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nebyla nalezena žádná emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Hledat emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Barva pleti $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smajlíci a lidé", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Zvířata a příroda", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Jídlo a pití", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Cestování a místa", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivity", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekty", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboly", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Vlajky", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Nástroj pro tvorbu Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Nástroj pro tvorbu balíčků nálepek Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Pokyny k nástroji pro tvorbu balíčků nálepek", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliknutím nebo přetažením sem přidáte obrázky", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Přetáhněte obrázky sem", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Balíček nálepek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Balíček nálepek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Zrušit", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopírovat", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Další", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Zpět", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Přidejte své nálepky", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Odstranit obrázek", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kliknutím nebo přetažením souboru přidáte nálepku", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Nálepky musí být ve formátu PNG, APNG nebo WebP s transparentním pozadím a rozlišením 512x512 pixelů. Doporučený okraj je 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Zobrazit okraje", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Přidat emoji ke každé nálepce", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Díky tomu vám budeme moci navrhovat nálepky při psaní zpráv.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Ještě pár drobností…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Název", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Pojmenujte svůj balíček nálepek", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Zadejte jméno autora svých nálepek", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Titulní obrázek", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Tento obrázek se zobrazí, když budete balíček nálepek sdílet", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Jste si jisti, že chcete nahrát svůj balíček nálepek?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Nahrát", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Po vytvoření balíčku již nebude možné nálepky upravovat ani mazat.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Vytvoření vlastního balíčku nálepek", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Nahráno $count$ z $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulujeme! Právě jste vytvořili balíček nálepek.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Ke svým novým nálepkám se dostanete přes ikonku nálepky, nebo je můžete sdílet s přáteli pomocí níže uvedeného odkazu.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Použijte hashtag $hashtag$, abyste ostatním lidem pomohli najít adresy URL všech vlastních balíčků nálepek, které chcete zpřístupnit.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Adresa URL balíčku nálepek", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalovat", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Vytvořit další balíček nálepek", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Vyzkoušejte tenhle balíček nálepek, který jsem vytvořil/a pro Signal. #vytvorsivlastninalepku", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Byl přidán jeden obrázek} few {Byly přidány {count,number} obrázky} many {Bylo přidáno {count,number} obrázků} other {Bylo přidáno {count,number} obrázků}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animovaná grafika není v současné době podporována", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Vložený obrázek je příliš velký", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Chyba při zpracování obrázku", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animované obrázky PNG musí být čtvercové", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animované obrázky musí být v nekonečné smyčce", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Rozměry animovaného obrázku PNG jsou příliš velké", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Rozměry animovaného obrázku PNG jsou příliš malé", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Chyba při nahrávání obrázků: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nelze se připojit k serveru: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nepodařilo se nahrát obrázky kvůli vypršení platnosti pověření. Otevřete prosím webové stránky znovu z aplikace Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Odkaz zkopírován", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moje nálepka ve světlém motivu", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moje nálepka v tmavém motivu", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Nastavte si aplikaci Signal v telefonu a na počítači, abyste mohli používat nástroj pro tvorbu balíčků nálepek", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Přizpůsobit reakce", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Název emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/da/messages.json b/sticker-creator/src/assets/locales/da/messages.json new file mode 100644 index 000000000..95ab191b4 --- /dev/null +++ b/sticker-creator/src/assets/locales/da/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Klistermærkekunst" + }, + "index--create-sticker-pack" : { + "message" : "Opret en ny klistermærkepakke" + }, + "SignIn--title" : { + "message" : "Opret en klistermærkepakke", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Ligesom med alt andet hos Signal er klistermærker også krypteret. Brug dette værktøj til at lave dine egne tilpassede klistermærkepakker.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Login-kode", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Åbn Signal Desktop for at starte", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Beklager, din browser er ikke understøttet. Åbn dette link i Firefox eller Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Annuller" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Ingen emojier fundet", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Søg efter emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Hudfarve $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys og personer", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Dyr og natur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Mad og drikke", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Rejser og steder", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktiviteter", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekter", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flag", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal-kunstner", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal-klistermærkepakkeværktøj", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Vejledning til Signal-klistermærkepakkeværktøj", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klik for at tilføje eller slip billeder her", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Slip billeder her", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Klistermærkepakke", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Klistermærkepakke", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Annullér", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiér", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Næste", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Tilbage", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Tilføj dine klistermærker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Fjern billede", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klik eller træk/slip en fil for at tilføje et klistermærke", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Klistermærker skal være i formatet PNG, APNG eller WebP med en gennemsigtig baggrund og 512 x 512 pixels. Den anbefalede margen er 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Se margener", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Tilføj emoji til hvert klistermærke", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dette gør det muligt for Signal-appen at foreslå klistermærker til dig under beskedskrivning.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Lige et par detaljer mere...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Navngiv din klistermærkepakke", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Forfatter", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Angiv et navn for at indsende dine klistermærker", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Forsidebillede", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Dette er det billede, der vises, når du deler din klistermærkepakke", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Er du sikker på, at du vil uploade din klistermærkepakke?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Upload", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Du vil ikke længere være i stand til at redigere eller slette efter oprettelse af en klistermærkepakke.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Opretter din klistermærkepakke", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ af $total$ er uploadet", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Tillykke! Du har oprettet en klistermærkepakke.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Få adgang til dine nye klistermærker med klistermærkeikonet, eller del med dine venner med nedenstående link.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Hvis du ønsker at gøre din klistermærkepakke offentligt tilgængelig, skal du bruge hashtagget $hashtag$ for at hjælpe andre mennesker med at finde webadressen til din klistermærkepakke.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Webadresse til klistermærkepakke", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installér", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Opret en anden klistermærkepakke", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Se denne nye klistermærkepakke, jeg har oprettet til Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 billede tilføjet} other {{count,number} billeder tilføjet}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animeret kunst er ikke understøttet i øjeblikket", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Det valgte billede er for stort", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Fejl ved bearbejdning af billede", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animerede PNG-billeder skal være firkantede", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animerede billeder skal blive ved med at loope", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animerede PNG-billeddimensioner er for store", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animerede PNG-billeddimensioner er for små", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Fejl ved upload af billeder: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Kan ikke oprette forbindelse til serveren: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Det lykkedes ikke at uploade billeder på grund af udløbne loginoplysninger. Åbn hjemmesiden igen fra Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link kopieret", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mit klistermærke i lyst tema", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mit klistermærke i mørkt tema", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Sæt Signal op på din telefon og computer for at bruge værktøjet til klistermærkepakker", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Tilpas reaktioner", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emojialias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/de/messages.json b/sticker-creator/src/assets/locales/de/messages.json new file mode 100644 index 000000000..04933cffc --- /dev/null +++ b/sticker-creator/src/assets/locales/de/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Sticker-Art-Creator" + }, + "index--create-sticker-pack" : { + "message" : "Ein neues Sticker-Set erstellen" + }, + "SignIn--title" : { + "message" : "Erstelle ein Sticker-Set", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Genau wie alles andere in Signal sind auch die Sticker verschlüsselt. Mit diesem Tool kannst du deine eigenen Sticker-Sets erstellen.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Anmelde-Code", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Öffne zuerst Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Sorry, dein Browser wird nicht unterstützt. Bitte öffne diesen Link in Firefox oder Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Abbrechen" + }, + "minutesAgo" : { + "message" : "$minutes$ Min.", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Keine Emojis gefunden", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Emojis suchen", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Hautfarbe $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys & Menschen", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Tiere & Natur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Essen & Trinken", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Reisen & Orte", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivitäten", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekte", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symbole", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flaggen", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Art-Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal Sticker-Set-Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal Logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Leitfaden für den Sticker-Set-Creator", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Zum Hinzufügen anklicken oder Bilder hier ablegen", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Bilder hier ablegen", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Sticker-Set", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Sticker-Set", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Abbrechen", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopieren", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Weiter", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Zurück", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Füge deine Sticker hinzu", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Bild entfernen", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klicke auf eine Datei oder nutze Ziehen und Ablegen, um einen Sticker hinzuzufügen.", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Sticker müssen das PNG-, APNG- oder WebP-Format mit transparentem Hintergrund und 512 x 512 Pixeln besitzen. Der empfohlene Rand beträgt 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ränder ansehen", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Füge jedem Sticker ein Emoji hinzu", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dies ermöglicht uns, dir während deiner Unterhaltungen Sticker vorzuschlagen.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Nur noch einige Details …", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Gib deinem Sticker-Set einen Namen", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Gib einen Namen ein, um deine Sticker einzusenden unter", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Coverbild", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Dieses Bild wird angezeigt, wenn du dein Sticker-Set teilst.", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Möchtest du dein Sticker-Set wirklich hochladen?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Hochladen", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Du wirst nach dem Erstellen eines Sticker-Sets nichts mehr ändern oder löschen können.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Erstellen deines Sticker-Sets", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ von $total$ hochgeladen", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulation! Du hast ein Sticker-Set erstellt.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Greife über das Stickersymbol auf deine neuen Sticker zu oder teile sie mit deinen Freunden über den unten genannten Link.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Verwende den Hashtag $hashtag$, um anderen Leuten dabei zu helfen, die URLs deiner selbst erstellten und veröffentlichten Sticker-Sets zu finden.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Sticker-Set-URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installieren", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Weiteres Sticker-Set erstellen", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Schau dir dieses neue Sticker-Set an, das ich für Signal erstellt habe. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 Bild hinzugefügt} other {{count,number} Bilder hinzugefügt}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animierte Kunst wird derzeit nicht unterstützt", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Abgelegtes Bild ist zu groß", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Fehler beim Verarbeiten des Bildes", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animierte PNG-Bilder müssen quadratisch sein", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animierte Bilder müssen sich unendlich wiederholen", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Die Abmessungen des animierten PNG-Bildes sind zu groß", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Die Abmessungen des animierten PNG-Bildes sind zu klein", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Fehler beim Hochladen von Bildern: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Kann keine Verbindung zum Server herstellen: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Das Hochladen von Bildern ist aufgrund von abgelaufenen Anmeldeinformationen fehlgeschlagen. Bitte öffne die Website erneut über Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link kopiert", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mein Sticker im hellen Design", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mein Sticker im dunklen Design", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Bitte richte Signal auf deinem Mobiltelefon und deinem Computer ein, um den Sticker-Set-Creator zu verwenden", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Reaktionen anpassen", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-Alias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/el/messages.json b/sticker-creator/src/assets/locales/el/messages.json new file mode 100644 index 000000000..c20e33265 --- /dev/null +++ b/sticker-creator/src/assets/locales/el/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Δημιουργός αυτοκόλλητων" + }, + "index--create-sticker-pack" : { + "message" : "Δημιούργησε ένα νέο πακέτο αυτοκόλλητων" + }, + "SignIn--title" : { + "message" : "Δημιούργησε ένα πακέτο αυτοκόλλητων", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Όπως και οτιδήποτε άλλο στο Signal, τα αυτοκόλλητα είναι κρυπτογραφημένα. Χρησιμοποίησε αυτό το εργαλείο για να δημιουργήσεις τα δικά σου εξατομικευμένα πακέτα αυτοκόλλητων.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Κωδικός σύνδεσης", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Άνοιξε το Signal Desktop για να ξεκινήσεις", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Δυστυχώς, το πρόγραμμα περιήγησης που χρησιμοποιείς δεν υποστηρίζεται. Άνοιξε αυτόν τον σύνδεσμο σε Firefox ή Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Ακύρωση" + }, + "minutesAgo" : { + "message" : "$minutes$λ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Δεν βρέθηκε emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Αναζήτηση emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Χρώμα δέρματος $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Φατσούλες και άνθρωποι", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Ζώα και φύση", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Φαγητό και ποτό", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Ταξίδι και τοποθεσίες", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Δραστηριότητες", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Αντικείμενα", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Σύμβολα", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Σημαίες", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Δημιουργός αυτοκόλλητων Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Δημιουργός πακέτου αυτοκόλλητων Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Λογότυπο Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Οδηγίες δημιουργίας πακέτου αυτοκόλλητων", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Πάτα για προσθήκη ή σύρε εικόνες εδώ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Σύρε εικόνες εδώ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Πακέτο αυτοκόλλητων", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Πακέτο αυτοκόλλητων", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Ακύρωση", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Αντιγραφή", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Επόμενο", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Πίσω", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Πρόσθεσε τα αυτοκόλλητά σου", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Αφαίρεση εικόνας", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Κάνε κλικ ή σύρε ένα αρχείο εδώ για να προσθέσεις αυτοκόλλητο", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Τα αυτοκόλλητα πρέπει να είναι τύπου PNG, APNG ή WebP, με διαφανές φόντο και διαστάσεις 512x512 pixel. Προτείνεται περιθώριο 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Προβολή περιθωρίων", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Προσθήκη emoji σε κάθε αυτοκόλλητο", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Αυτό μας επιτρέπει να προτείνουμε αυτοκόλλητα καθώς συνομιλείς.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Μερικές ακόμα λεπτομέρειες…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Τίτλος", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Δώσε όνομα στο πακέτο αυτοκόλλητων", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Εκδότης", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Γράψε ένα όνομα για να υποβάλεις τα αυτοκόλλητά σου", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Εικόνα εξωφύλλου", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Αυτή η εικόνα θα φαίνεται όταν μοιράζεσαι το πακέτο αυτοκόλλητων", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Θέλεις σίγουρα να ανεβάσεις το πακέτο αυτοκόλλητων;", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Ανέβασμα", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Δεν θα μπορείς πλέον να επεξεργαστείς ή να διαγράψεις στοιχεία, αφού δημιουργήσεις το πακέτο αυτοκόλλητων.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Δημιουργείται το πακέτο αυτοκόλλητων", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Ανέβηκαν $count$ από τα $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Συγχαρητήρια! Δημούργησες ένα πακέτο αυτοκόλλητων.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Πάτα στο εικονίδιο για τα αυτοκόλλητα για να δεις τα νέα δικά σου ή χρησιμοποίησε τον παρακάτω σύνδεσμο για να τα μοιραστείς με φίλους.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Χρησιμοποίησε το hashtag $hashtag$ για να βοηθήσεις άλλους χρήστες να βρουν συνδέσμους με πακέτα αυτοκόλλητων που θέλεις να είναι προσβάσιμα στο κοινό.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Σύνδεσμος πακέτου αυτοκόλλητων", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Εγκατάσταση", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Δημιούργησε ένα νέο πακέτο αυτοκόλλητων", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Δες το νέο πακέτο αυτοκόλλητων που έφτιαξα για το Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {προστέθηκε 1 εικόνα} other {προστέθηκαν {count,number} εικόνες}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Οι κινούμενες εικόνες δεν υποστηρίζονται προς το παρόν", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Η εικόνα που έσυρες είναι πολύ μεγάλη", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Σφάλμα κατά την επεξεργασία της εικόνας", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Οι κινούμενες εικόνες PNG πρέπει να είναι τετράγωνες", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Οι κινούμενες εικόνες πρέπει να κινούνται επαναλαμβανόμενα συνέχεια", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Οι διαστάσεις της κινούμενης εικόνας PNG είναι πολύ μεγάλες", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Οι διαστάσεις της κινούμενης εικόνας PNG είναι πολύ μικρές", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Σφάλμα κατά το ανέβασμα των εικόνων: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Αδυναμία σύνδεσης με τον διακομιστή: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Η μεταφόρτωση εικόνων απέτυχε επειδή τα διαπιστευτήριά σου έχουν λήξει. Άνοιξε ξανά τον ιστότοπο από το Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Ο σύνδεσμος αντιγράφτηκε", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Το αυτοκόλλητό μου σε ανοιχτόχρωμο θέμα", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Το αυτοκόλλητό μου σε σκοτεινό θέμα", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Ρύθμισε το Signal στο τηλέφωνο και τον υπολογιστή σου για να χρησιμοποιήσεις τον δημιουργό πακέτων με αυτοκόλλητα", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Προσαρμογή αντιδράσεων", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Ψευδώνυμο emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/en/messages.json b/sticker-creator/src/assets/locales/en/messages.json new file mode 100644 index 000000000..e51c9ed78 --- /dev/null +++ b/sticker-creator/src/assets/locales/en/messages.json @@ -0,0 +1,335 @@ +{ + "smartling": { + "placeholder_format_custom": "(\\$.+?\\$)", + "string_format_paths": "icu: [*/messageformat]", + "translate_paths": [ + { + "path": "*/messageformat", + "key": "{*}/messageformat", + "instruction": "*/description" + }, + { + "key": "{*}/message", + "path": "*/message", + "instruction": "*/description" + } + ] + }, + "index--title": { + "message": "Sticker Art Creator" + }, + "index--create-sticker-pack": { + "message": "Create new sticker pack" + }, + "SignIn--title": { + "message": "Create a Sticker Pack", + "description": "A title of SignIn page" + }, + "icu:SignIn--body": { + "messageformat": "Just as with everything else in Signal, stickers are encrypted too. Use this tool to create your own custom sticker packs.", + "description": "A body of SignIn page" + }, + "SignIn--qr": { + "message": "Sign In Code", + "description": "An alt text of QR code displayed on sign in page" + }, + "SignIn--link": { + "message": "Open Signal Desktop to Begin", + "description": "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description": { + "message": "Sorry, your browser is not supported. Please open this link in Firefox or Chrome", + "description": "A text displayed when user's browser is not supported" + }, + "cancel": { + "message": "Cancel" + }, + "minutesAgo": { + "message": "$minutes$m", + "description": "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty": { + "message": "No emoji found", + "description": "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder": { + "message": "Search Emoji", + "description": "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone": { + "message": "Skin tone $tone$", + "description": "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people": { + "message": "Smileys & People", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature": { + "message": "Animals & Nature", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink": { + "message": "Food & Drink", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places": { + "message": "Travel & Places", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--activities": { + "message": "Activities", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--objects": { + "message": "Objects", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols": { + "message": "Symbols", + "description": "Name of the emoji picker category." + }, + "EmojiPicker--category--flags": { + "message": "Flags", + "description": "Name of the emoji picker category." + }, + "ArtCreator--title": { + "message": "Signal Art Creator", + "description": "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker": { + "message": "Signal Sticker Pack Creator", + "description": "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon": { + "message": "Signal Logo", + "description": "An alt text of signal logo" + }, + "StickerCreator--guidelines": { + "message": "Sticker Pack Creator Guidelines", + "description": "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText": { + "message": "Click to add or drop images here", + "description": "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText": { + "message": "Drop images here", + "description": "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker": { + "message": "Sticker pack", + "description": "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji": { + "message": "Sticker pack", + "description": "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel": { + "message": "Cancel", + "description": "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button": { + "message": "Copy", + "description": "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook": { + "message": "Facebook", + "description": "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter": { + "message": "Twitter", + "description": "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest": { + "message": "Pinterest", + "description": "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp": { + "message": "WhatsApp", + "description": "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next": { + "message": "Next", + "description": "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev": { + "message": "Back", + "description": "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker": { + "messageformat": "Add your stickers", + "description": "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker": { + "message": "Remove image", + "description": "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker": { + "message": "Click or drag/drop a file to add a sticker", + "description": "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker": { + "message": "Stickers must be in PNG, APNG, or WebP format with a transparent background and 512x512 pixels. Recommended margin is 16px.", + "description": "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins": { + "message": "View margins", + "description": "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker": { + "message": "Add an emoji to each sticker", + "description": "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker": { + "message": "This allows us to suggest stickers to you as you're messaging.", + "description": "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title": { + "message": "Just a few more details...", + "description": "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title": { + "message": "Title", + "description": "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder": { + "message": "Name your sticker pack", + "description": "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author": { + "message": "Author", + "description": "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder": { + "message": "Enter a name to submit your stickers under", + "description": "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover": { + "message": "Cover image", + "description": "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker": { + "message": "This is the image that will show up when you share your sticker pack", + "description": "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker": { + "message": "Are you sure you want to upload your sticker pack?", + "description": "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm": { + "message": "Upload", + "description": "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker": { + "message": "You will no longer be able to make edits or delete after creating a sticker pack.", + "description": "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker": { + "message": "Creating your sticker pack", + "description": "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded": { + "message": "$count$ of $total$ uploaded", + "description": "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title": { + "message": "Congratulations! You created a sticker pack.", + "description": "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help": { + "message": "Access your new stickers through the sticker icon, or share with your friends using the link below.", + "description": "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction": { + "message": "Use the hashtag $hashtag$ to help other people find the URLs for any custom sticker packs that you would like to make publicly accessible.", + "description": "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle": { + "message": "Sticker Pack URL", + "description": "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install": { + "message": "Install", + "description": "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother": { + "message": "Create another sticker pack", + "description": "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage": { + "message": "Check out this new sticker pack I created for Signal. #makeprivacystick", + "description": "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded": { + "messageformat": "{count, plural, one {1 image} other {# images}} added", + "description": "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated": { + "message": "Animated art is not currently supported", + "description": "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge": { + "message": "Dropped image is too large", + "description": "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing": { + "message": "Error processing image", + "description": "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare": { + "message": "Animated PNG images must be square", + "description": "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever": { + "message": "Animated images must loop forever", + "description": "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge": { + "message": "Animated PNG image dimensions are too large", + "description": "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall": { + "message": "Animated PNG image dimensions are too small", + "description": "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading": { + "message": "Error uploading images: $message$", + "description": "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn": { + "message": "Can't connect to server: $message$", + "description": "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals": { + "message": "Failed to upload images due to expired credentials. Please reopen the website from Signal Desktop again.", + "description": "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied": { + "message": "Link copied", + "description": "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light": { + "message": "My sticker in light theme", + "description": "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark": { + "message": "My sticker in dark theme", + "description": "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error": { + "message": "Please set up Signal on your phone and desktop to use the Sticker Pack Creator", + "description": "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label": { + "message": "Emoji", + "description": "Label for emoji button" + }, + "CustomizingPreferredReactions__title": { + "message": "Customize reactions", + "description": "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder": { + "message": "Emoji alias", + "description": "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/es/messages.json b/sticker-creator/src/assets/locales/es/messages.json new file mode 100644 index 000000000..c054605ca --- /dev/null +++ b/sticker-creator/src/assets/locales/es/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Creador de stickers" + }, + "index--create-sticker-pack" : { + "message" : "Crear nuevo paquete de stickers" + }, + "SignIn--title" : { + "message" : "Crear un paquete de stickers", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Como todo lo demás en Signal, los stickers también están encriptados . Usa esta herramienta para crear tus propios paquetes de stickers personalizados.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Código de inicio de sesión", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Para empezar, abre Signal para Esctorio", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Lo sentimos, tu navegador no es compatible. Por favor, abre este enlace en Firefox o Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cancelar" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Emoji no encontrado", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Buscar emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Tono de piel $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Emoticonos y personas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animales y naturaleza", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Comida y bebida", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viajes y destinos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Actividades", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objetos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Símbolos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Banderas", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Creador artístico de Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Creador de paquetes de stickers de Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo de Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Pautas del creador de paquetes de stickers", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Haz clic para añadir imágenes o arrástralas aquí", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Arrastra imágenes aquí", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paquete de stickers", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paquete de stickers", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cancelar", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copiar", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Siguiente", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Atrás", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Añade stickers", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Eliminar imagen", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Haz clic o arrastra y suelta un archivo para agregar un sticker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Los stickers son archivos en formato PNG, APNG o WebP con fondo transparente y un tamaño de 512x512 píxeles. El margen recomendado es de 16 píxeles.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ver márgenes", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Describe cada sticker con un emoji", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Esto permite sugerir stickers al introducir un emoji en un chat.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Solo unos pocos detalles más…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Título", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Ponle nombre a tu paquete de stickers", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Introduce un alias para subir tus stickers", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imagen de presentación", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Esta es la imagen mostrada cuando se comparte el paquete", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "¿SegurX que quieres subir el paquete de stickers?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Subir", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "No podrás editar el paquete ni borrarlo nunca más tras subirlo (pero podrás crear nuevos paquetes sin fallos para compartir).", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Creando tu paquete de stickers", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ de $total$ transferidos", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "¡Enhorabuena! Has creado un paquete de stickers.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accede a tus nuevos stickers a través del icono de stickers o compártelos con tus amistades usando el enlace inferior.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Usa el hashtag $hashtag$ en las redes sociales para ayudar a más personas a encontrar tu paquete de stickers, si deseas publicarlo.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Dirección del paquete de stickers", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalar", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Crear otro paquete de stickers", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Mira este paquete de stickers que he creado en Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imagen añadida} other {{count,number} imágenes añadidas}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Las animaciones no son compatibles actualmente", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "La imagen arrastrada es demasiado grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Fallo al procesar la imagen", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Las imágenes en formato PNG animado deben tener forma cuadrada", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Las imágenes animadas deben tener un bucle infinito", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "El tamaño de las imágenes en formato PNG animado es demasiado grande", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "El tamaño de las imágenes en formato PNG animado es demasiado pequeño", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Fallo al subir imágenes: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Fallo al conectar con el servidor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Error al cargar imágenes debido a credenciales caducadas. Por favor, vuelve a abrir la web desde Signal para Escritorio", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Enlace copiado", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Tu sticker en tema (con fondo) claro", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Tu sticker en tema (con fondo) oscuro", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Por favor, configura Signal en tu celular/móvil y enlázalo con Signal Desktop para usar el Creador de Paquetes de Stickers", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emojis", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizar reacciones", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nombre del emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/et-EE/messages.json b/sticker-creator/src/assets/locales/et-EE/messages.json new file mode 100644 index 000000000..098803216 --- /dev/null +++ b/sticker-creator/src/assets/locales/et-EE/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Kleebiste komplekti looja" + }, + "index--create-sticker-pack" : { + "message" : "Loo uus kleebiste komplekt" + }, + "SignIn--title" : { + "message" : "Loo kleebiste komplekt", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Just nagu kõik muu Signalis, ka meie kleebised on krüptitud. Kasuta seda tööriista, et luua oma isikupärastatud kleebiste komplekt.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Sisselogimiskood", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Alustamiseks ava Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Vabandust, sinu brauser ei ole toetatud. Palun ava see link Firefoxis või Chrome'is", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Loobu" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Ühtegi emojit ei leitud", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Otsi emojit", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "$tone$ nahatoon", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Emotikonid ja inimesed", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Loomad ja loodus", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Toit ja jook", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Reisimine ja kohad", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Hobitegevused", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objektid", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Sümbolid", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Lipud", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signali kleebiste looja", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signali kleebiste komplekti loomiskeskkond", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signali logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Signali kleebiste komplekti loomiskeskkonna suunised", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Piltide lisamiseks klõpsa või kukuta pildid siia", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Kukuta pildid siia", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Kleebiste komplekt", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Kleebiste komplekt", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Loobu", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopeeri", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Edasi", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Tagasi", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Lisa enda kleebised", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Eemalda pilt", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kleebise lisamiseks klõpsa või lohista/kukuta fail siia", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Kleebised peavad olema PNG, APNG või WebP vormingus, läbipaistva taustaga ja suurusega 512x512 pikslit. Soovitatav veeris on 16 pikslit.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Näita veeriseid", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Lisa igale kleebisele emoji", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "See võimaldab meil sulle sõnumite saatmise ajal kleebiseid soovitada.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Lihtsalt mõned detailid veel …", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Pealkiri", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Anna oma kleebiste komplektile nimi", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Lisa nimi, mille alt oma kleebised avaldada", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Kaanepilt", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "See pilt kuvatakse siis, kui jagate oma kleebiste komplekti", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Kas sa soovid kindlasti oma kleebiste komplekti üles laadida?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Laadi üles", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Pärast kleebiste komplekti loomist ei saa enam muudatusi teha ega kustutada.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Kleebiste komplekti loomine", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ koguarvust $total$ üles laaditud", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Palju õnne! Sa lõid uue kleebiste komplekti.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Kasuta uutele kleebistele ligipääsuks kleebiste ikooni või jaga neid oma sõpradega alloleva lingi kaudu.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Kasuta räsi $hashtag$, et aidata teistel leida kohandatud kleebiste komplektide URLe, mida soovid avalikult kättesaadavaks teha.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Kleebiste komplekti URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Paigalda", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Loo veel üks kleebiste komplekt", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Vaata seda uut kleebiste komplekti, mille ma Signali jaoks tegin. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 pilt lisatud} other {{count,number} pilti lisatud}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animeeritud kleebised pole hetkel toetatud", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Kukutatud pilt on liiga suur", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Pildi töötlemisel tekkis tõrge", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animeeritud PNG pildid peavad olema ruudukujulised", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animeeritud piltidel peab olems lõputu tsükkel", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animeeritud PNG pildi mõõtmed on liiga suured", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animeeritud PNG pildi mõõtmed on liiga väikesed", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Kleebiste üleslaadimisel tekkis tõrge: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Serveriga ei saa ühendust: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Aegunud volituste tõttu ei saanud pilte üles laadida. Palun ava veebileht Signal Desktopi alt uuesti.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link kopeeritud", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Minu kleebis heledas teemas", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Minu kleebis tumedas teemas", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Kleebiste komplekti loomiskeskkonna kasutamiseks pead seadistama Signali nii enda telefonis kui ka arvutis", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Kohanda reaktsioone", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji nimi", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/eu/messages.json b/sticker-creator/src/assets/locales/eu/messages.json new file mode 100644 index 000000000..e4b093177 --- /dev/null +++ b/sticker-creator/src/assets/locales/eu/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Eranskailuen sortzailea" + }, + "index--create-sticker-pack" : { + "message" : "Sortu eranskailu-pakete bat" + }, + "SignIn--title" : { + "message" : "Sortu eranskailu-pakete bat", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal-eko beste guztia bezala, eranskailuak ere enkriptatuta daude. Erabili tresna hau zeure eranskailu-pakete pertsonalizatuak sortzeko.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Saioa hasteko kodea", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Hasteko, ireki Signal ordenagailuan", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Zure arakatzailea ez da onartzen. Ireki esteka hau Firefox edo Chrome-n.", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Utzi" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Ez da emojirik aurkitu", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Bilatu emojiak", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Azalaren kolorea: $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Emojiak eta jendea", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animaliak eta natura", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Janaria eta edaria", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Bidaiak eta tokiak", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Jarduerak", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objektuak", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Ikurrak", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Banderak", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Eranskailuen sortzailea", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal-eko eranskailu-paketeen sortzailea", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-en logoa", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Signal-eko eranskailu-paketeen gidalerroak", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Irudiak hemen gehitzeko, egin klik edo arrasta itzazu honaino", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Arrastatu irudiak honaino", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Eranskailu-paketea", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Eranskailu-paketea", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Utzi", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiatu", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Hurrengoa", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Atzera", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Gehitu zeure eranskailuak", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Kendu irudia", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Eranskailu bat gehitzeko, egin klik edo arrastatu/jaregin fitxategi bat", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Eranskailuek baldintza hauek bete behar dituzte: PNG, APNG edo WebP formatua izan; atzeko plano gardena izan; eta 512 × 512 pixel izan. 16 px-ko marjina izatea gomendatzen da.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ikusi marjinak", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Gehitu emoji bat eranskailu bakoitzari", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Honen bidez, eranskailuak iradoki ahalko dizkizugu mezuak bidaltzen dituzun bitartean.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Xehetasun batzuk baino ez dira falta…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Izena", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Jarri izena eranskailu-paketeari", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Egilea", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Idatzi izen bat eranskailuak bidaltzeko", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Azaleko irudia", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Eranskailu-paketea partekatzen duzunean, irudi hau agertuko da", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Ziur zaude eranskailu-paketea kargatu nahi duzula?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Kargatu", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Eranskailu-pakete bat sortu ondoren, ezingo duzu editatu edo ezabatu.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Eranskailu-paketea sortzen", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$/$total$ kargatuta", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Zorionak! Eranskailu-pakete bat sortu duzu.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Atzitu eranskailu berriak eranskailuen ikonoa erabiliz, edo parteka itzazu lagunekin beheko estekaren bidez.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Beste pertsona batzuek partekatu nahi dituzun eranskailu-pakete pertsonalizatuen URLak aurkitu ahal izan ditzaten, erabili $hashtag$ hashtaga.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Eranskailu-paketearen URLa", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalatu", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Sortu beste eranskailu-pakete bat", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Eman begiratu bat sortu dudan eranskailu-pakete berriari. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 irudi gehitu da} other {{count,number} irudi gehitu dira}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Une honetan ez dira onartzen animazioak", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Jaregindako irudia handiegia da", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Errore bat izan da irudia prozesatzean", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animatutako PNG irudiek karratuak izan behar dute", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Irudi animatuak etengabe errepikatu behar dira", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animatutako PNG irudia handiegia da", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animatutako PNG irudia txikiegia da", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Errore bat gertatu da irudiak kargatzean: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Ezin da konektatu zerbitzarira: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kredentzialak iraungita daudenez, ezin izan dira kargatu irudiak. Joan Signal-era ordenagailuan eta ireki webgunea berriro.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Kopiatu da esteka", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Nire eranskailua, gai argiarekin", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Nire eranskailua, gai ilunarekin", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Eranskailu-paketeen sortzailea erabili ahal izateko, konfiguratu Signal telefonoan eta ordenagailuan.", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emojia", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Pertsonalizatu erreakzioak", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emojiaren aliasa", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/fa-IR/messages.json b/sticker-creator/src/assets/locales/fa-IR/messages.json new file mode 100644 index 000000000..8e0349d7b --- /dev/null +++ b/sticker-creator/src/assets/locales/fa-IR/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "سازنده استیکر هنری" + }, + "index--create-sticker-pack" : { + "message" : "بسته استیکر جدیدی بسازید" + }, + "SignIn--title" : { + "message" : "ساختن یک بسته استیکر", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "مانند هر چیز دیگری در سیگنال، استیکرها هم رمزگذاری‌شده هستند. با استفاده از این ابزار، بسته‌های استیکر سفارشی خودتان را بسازید.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "کد ورود", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "برای شروع، سیگنال دسکتاپ را باز کنید", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "متأسفانه مرورگر شما پشتیبانی نمی‌شود. لطفاً این پیوند را در فایرفاکس یا کروم باز کنید", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "لغو" + }, + "minutesAgo" : { + "message" : "$minutes$ دقیقه پیش", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ایموجی پیدا نشد", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "جستجوی ایموجی", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "رنگ پوست $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "لبخندها و آدم‌ها", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "حیوانات و طبیعت", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "غذا و نوشیدنی", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "سفر و مکان‌ها", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "فعالیت‌ها", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "اشیا", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "نمادها", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "پرچم‌ها", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "سازنده هنری سیگنال", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "سازنده بسته استیکر سیگنال", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "لوگوی سیگنال", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "راهنمای سازنده بسته استیکر", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "برای افزودن عکس‌ها کلیک کنید یا آن‌ها را اینجا رها کنید", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "عکس‌ها را اینجا رها کنید", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "بسته استیکر", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "بسته استیکر", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "لغو", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "کپی", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "فیس‌بوک", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "توییتر", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "پینترست", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "واتس‌اپ", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "بعدی", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "بازگشت", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "استیکرهای خود را اضافه کنید", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "حذف تصویر", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "برای افزودن استیکر، کلیک کنید یا فایل را اینجا بکشید/رها کنید", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "استیکرها باید در قالب PNG، APNG، یا WebP با پس‌زمینه شفاف و ۵۱۲ در ۵۱۲ پیکسل باشند. حاشیه توصیه‌شده ۱۶ پیکسل است.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "مشاهده حاشیه‌ها", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "یک ایموجی به هر استیکر اضافه کنید", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "این کار به ما امکان می‌دهد که وقتی در حال ارسال پیام هستید، استیکرها را به شما پیشنهاد کنیم.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "فقط چند جزئیات دیگر...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "عنوان", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "بسته استیکر خود را نام‌گذاری کنید", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "سازنده", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "یک نام وارد کنید تا استیکرهایتان تحت آن ارسال شوند", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "تصویر جلد", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "این تصویری است که وقتی بسته استیکرتان را به اشتراک می‌گذارید نشان داده خواهد شد", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "مطمئن هستید که می‌خواهید بسته استیکر خود را بارگذاری کنید؟", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "بارگذاری", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "پس از ساختن بسته استیکر، دیگر قادر به ویرایش و حذف آن نخواهید بود.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "در حال ساختن بسته استیکر شما", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ از $total$ بارگذاری شد", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "تبریک! یک بسته استیکر ساختید.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "از طریق نماد استیکر به استیکرهای جدیدتان دسترسی پیدا کنید، یا آن‌ها را از طریق پیوند زیر با دوستانتان به اشتراک بگذارید.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "با استفاده از هشتگ $hashtag$ به دیگران در پیدا کردن نشانی اینترنتی بسته‌های استیکر سفارشی که می‌خواهید در دسترس عموم باشد کمک کنید.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "نشانی اینترنتی بسته استیکر", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "نصب", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "یک بسته استیکر دیگر بسازید", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "این بسته استیکر جدید که برای سیگنال ساختم را ببینید. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {۱ تصویر اضافه شد} other {{count,number} تصویر اضافه شد}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "هنر پویانمایی در حال حاضر پشتیبانی نمی‌شود", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "تصویر رهاشده بیش‌ازحد بزرگ است", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "خطا در پردازش تصویر", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "تصاویر متحرک PNG باید مربع باشند", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "تصاویر متحرک باید پیوسته و ابدی تکرار شوند", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ابعاد تصویر متحرک PNG بیش‌ازحد بزرگ است", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ابعاد تصویر متحرک PNG بیش‌ازحد کوچک است", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "خطا در بارگذاری تصاویر: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "اتصال به سرور امکان‌پذیر نیست: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "به دلیل منقضی شدن مشخصات ورود، بارگذاری تصویر انجام نشد. لطفاً وب‌سایت را دوباره از سیگنال دسکتاپ باز کنید.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "پیوند کپی شد", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "استیکر من در طرح زمینه روشن", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "استیکر من در طرح زمینه تیره", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "برای استفاده از سازنده بسته استیکر، لطفاً سیگنال را روی تلفن و دسکتاپ خود راه‌اندازی کنید", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ایموجی", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "سفارشی‌سازی واکنش‌ها", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "نام مستعار ایموجی", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/fi/messages.json b/sticker-creator/src/assets/locales/fi/messages.json new file mode 100644 index 000000000..264ec52ce --- /dev/null +++ b/sticker-creator/src/assets/locales/fi/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Tarrakuvien luonti" + }, + "index--create-sticker-pack" : { + "message" : "Luo uusi tarrapaketti" + }, + "SignIn--title" : { + "message" : "Luo tarrapaketti", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Tarrat salataan, kuten kaikki muukin Signalissa. Luo tämän työkalun avulla omat mukautetut tarrapakettisi.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kirjautumiskoodi", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Aloita avaamalla Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Selaintasi ei valitettavasti tueta. Avaa tämä linkki Firefoxissa tai Chromessa", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Peruuta" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Emojia ei löytynyt", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Hae emojia", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Ihonväri $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Hymiöt ja ihmiset", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Eläimet ja luonto", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Ruoka ja juoma", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Matkailu ja paikat", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Toiminta", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Esineet", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symbolit", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Liput", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal-kuvien luonti", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal-tarrapaketin luonti", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Tarrapaketin luonnin ohjeet", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Lisää napsauttamalla tai pudota kuvia tähän", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Pudota kuvat tähän", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Tarrapaketti", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Tarrapaketti", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Peruuta", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopioi", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Seuraava", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Takaisin", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Lisää omia tarroja", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Poista kuva", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Lisää tarra napsauttamalla tai vetämällä ja pudottamalla tiedosto", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Tarrojen tulee olla PNG-, APNG- tai WebP-muodossa, läpinäkyvällä taustalla ja kooltaan 512 x 512 pikseliä. Suositeltu marginaali on 16 pikseliä.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Näytä marginaalit", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Lisää emoji jokaiseen tarraan", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Tämän avulla voimme ehdottaa sinulle tarroja viestin kirjoittamisen aikana.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Vielä muutama lisätieto...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Nimi", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Anna tarrapaketille nimi", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Tekijä", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Kirjoita tekijänimesi lähettääksesi tarrat", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Kansikuva", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Tämä kuva tulee näkyviin, kun jaat tarrapakettisi", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Haluatko varmasti ladata tarrapakettisi?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Lataa", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Et voi enää tehdä muokkauksia tai poistoja tarrapaketin luomisen jälkeen.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Tarrapakettiasi luodaan", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$/$total$ ladattu", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Onnittelut! Tarrapaketti luotu.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Käytä uusia tarroja tarrakuvakkeen kautta tai jaa ystäviesi kanssa alla olevan linkin avulla.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Auta muita löytämään julkisiksi haluamasi tarrapakettien osoitteet käyttämällä aihetunnistetta $hashtag$.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Tarrapaketin osoite", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Asenna", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Luo toinen tarrapaketti", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Tutustu tähän uuteen tarrapakettiin, jonka loin Signalille. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 kuva lisätty} other {{count,number} kuvaa lisätty}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animoituja kuvia ei tällä hetkellä tueta", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Pudotettu kuva on liian suuri", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Virhe kuvan käsittelyssä", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animoidun PNG-kuvan tulee olla neliömäinen", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animoiduissa kuvissa on oltava jatkuva toisto", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animoidun PNG-kuvan koko on liian suuri", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animoidun PNG-kuvan koko on liian pieni", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Virhe kuvien lataamisessa: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Palvelimeen ei voida muodostaa yhteyttä: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kuvien lataaminen epäonnistui vanhentuneiden tunnistetietojen takia. Avaa verkkosivusto Signal Desktopista uudelleen.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Linkki kopioitu", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Tarra vaaleassa teemassa", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Tarra tummassa teemassa", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Asenna Signal puhelimeesi ja tietokoneelle, jotta voit käyttää tarrapakettityökalua", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Mukauta reaktiot", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emojialias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/fr/messages.json b/sticker-creator/src/assets/locales/fr/messages.json new file mode 100644 index 000000000..b4ebda663 --- /dev/null +++ b/sticker-creator/src/assets/locales/fr/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Outil de création d’autocollants artistiques" + }, + "index--create-sticker-pack" : { + "message" : "Créer un nouveau pack d’autocollants" + }, + "SignIn--title" : { + "message" : "Créer un pack d’autocollants", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Comme pour tous les éléments Signal, les stickers sont également cryptés. Utilisez cet outil pour créer vos packs d’autocollants personnalisés.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Code d’inscription", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Pour commencer, ouvrez Signal sur votre ordinateur", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Désolé, votre navigateur n’est pas pris en charge. Veuillez ouvrir ce lien avec Firefox ou Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Annuler" + }, + "minutesAgo" : { + "message" : "Il y a $minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Aucun émoji n’a été trouvé", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Chercher un émoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Teint $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smiley et personnes", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animaux et nature", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Nourriture et boissons", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Voyages et lieux", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Activités", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objets", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboles", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Drapeaux", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Outil de création Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Outil de création de packs d’autocollants Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Instructions pour l’outil de création de packs d’autocollants", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Cliquez pour ajouter ou déposer des images ici", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Déposez les images ici", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pack d’autocollants", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pack d’autocollants", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Annuler", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copier", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Suivant", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Retour", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Ajoutez vos autocollants", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Retirez l’image", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Cliquez ou déposez un fichier pour ajouter un autocollant", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Les autocollants doivent être au format PNG, APNG ou WebP avec un arrière-plan transparent et 512 x 512 pixels. La marge recommandée est de 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Voir les marges", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Ajoutez un émoji pour chaque autocollant", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Cela nous permet de vous suggérer des autocollants lorsque vous composez un message.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Quelques détails de plus...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titre", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Nommer votre pack d’autocollants", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Auteur", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Saisir un nom pour soumettre vos autocollants", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Image de couverture", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "L’image qui s’affichera quand vous partagerez votre pack d’autocollants", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Voulez-vous vraiment importer votre pack d’autocollants ?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Importer", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Vous ne pourrez plus effectuer de modifications ni de suppressions après avoir créé le pack d’autocollants.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Création de votre pack d’autocollants", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ sur $total$ ont été importés", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Félicitations ! Vous avez créé un pack d’autocollants.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accédez à vos nouveaux autocollants à partir de l’icône autocollants ou partagez avec vos amis en utilisant le lien ci-dessous.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Utilisez le hashtag $hashtag$ pour aider d’autres personnes à trouver les URL de tout pack d’autocollants personnalisé que vous souhaiteriez rendre publique.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL du pack d’autocollants", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installer", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Créer un autre pack d’autocollants", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Découvrez ce nouveau pack d’autocollants que j’ai créé pour Signal. #makeprivacystick #respecterlavieprivée", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 image ajoutée} other {{count,number} images ajoutées}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Les créations animées ne sont pas prises en charge", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "L’image déposée est trop grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Erreur de traitement de l’image", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Les images animées au format PNG doivent être carrées", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Les images animées doivent se répéter indéfiniment", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Les dimensions de l’image animée PNG sont trop grandes", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Les dimensions de l’image animée PNG sont trop petites", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Erreur d’importation des images :$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Échec de connexion au serveur : $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Connexion expirée : Impossible d’importer des images. Veuillez rouvrir le site web depuis la version Desktop de Signal.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Le lien a été copié", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mon autocollant en thème clair", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mon autocollant en thème sombre", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Veuillez configurer Signal sur votre téléphone et votre ordinateur pour utiliser l’outil de création de packs d’autocollants", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Émoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personnaliser les réactions", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias d’émoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ga-IE/messages.json b/sticker-creator/src/assets/locales/ga-IE/messages.json new file mode 100644 index 000000000..2c6f56208 --- /dev/null +++ b/sticker-creator/src/assets/locales/ga-IE/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Cruthaitheoir Ealaíne Greamán" + }, + "index--create-sticker-pack" : { + "message" : "Cruthaigh beart greamán nua" + }, + "SignIn--title" : { + "message" : "Cruthaigh Beart Greamán", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Díreach mar an gcéanna le gach uile rud in Signal, tá na greamáin criptithe freisin. Úsáid an uirlis seo le do bhearta greamán saincheaptha féin a chruthú.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Cód Sínithe Isteach", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Oscail Deasc Signal le Tosú Air", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Ár leithscéal, ní tacaíocht le do bhrabhsálaí ann. Oscail an nasc in Firefox nó Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cuir ar ceal" + }, + "minutesAgo" : { + "message" : "$minutes$n", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Níor aimsíodh emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Cuardaigh Emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Ton craicinn $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Straoiseoga agus Daoine", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Ainmhithe agus an Nádúr", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Bia agus Deochanna", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Taisteal agus Áiteanna", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Gníomhaíochtaí", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Oibiachtaí", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Siombailí", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bratacha", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Cruthaitheoir Ealaíne Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Cruthaitheoir Beart Greamán Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Lógó Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Treoirlínte do Chruthaitheoirí Beart Greamán", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Cliceáil chun íomhánna a chur leis nó a scaoileadh anseo", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Scaoil íomhánna anseo", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Beart greamán", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Beart greamán", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cuir ar ceal", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Cóipeáil", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Ar aghaidh", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Siar", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Cuir do ghreamáin leis", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Bain íomhá", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Cliceáil nó tarraing/scaoil comhad chun greamán a chur leis", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Ní mór go mbeidh na greamáin i bhformáid PNG, APNG nó WebP le cúlra trédhearcach agus 512 × 512 picteilín. Is í an chiumhais mholta ná 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Féach ar na ciumhaiseanna", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Cuir emoji le gach greamán", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Ligeann sé seo dúinn greamáin a mholadh duit agus tú ag cur teachtaireachtaí.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Cúpla sonra eile...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Teideal", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Ainmnigh do bheart greamán", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Údar", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Cuir ainm isteach faoina gcuirfear do ghreamáin isteach", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Íomhá an chlúdaigh", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Seo an íomhá a thaispeánfar nuair a chomhroinnfidh tú do bheart greamán", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Cinnte gur mhaith leat do bheart greamán a uaslódáil?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Uaslódáil", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Ní bheidh tú in ann athruithe a dhéanamh ar ghreamáin ná iad a scriosadh a thuilleadh tar éis duit beart greamán a chruthú.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Do bheart greamán a chruthú", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ as $total$ uaslódáilte", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Comhghairdeas! Chruthaigh tú beart greamán.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Faigh rochtain ar do ghreamáin nua tríd an íocón greamán, nó comhroinn le do chairde leis an nasc thíos.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Úsáid an haischlib $hashtag$ chun cabhrú le daoine eile na URLanna a aimsiú le haghaidh aon bheart greamán saincheaptha ar mhaith leat é a chur ar fáil go poiblí.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL don Bheart Greamán", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Suiteáil", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Chruthaigh beart eile greamán", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Féach an beart greamán nua a chruthaigh mé le haghaidh Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 íomhá curtha leis} two {{count,number} íomhá curtha leis} few {{count,number} íomhá curtha leis} many {{count,number} n-íomhá curtha leis} other {{count,number} íomhá curtha leis}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Níl tacaíocht le healaín bheoite ann faoi láthair", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Tá an íomhá a scaoileadh rómhór", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Earráid le próiseáil na híomhá", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Ní mór go mbeidh cruth cearnógach ar íomhánna PNG beoite", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Ní mór go mbeidh íomhánna beoite ar lúb de shíor", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Tá toisí na híomhá PNG beoite rómhór", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Tá toisí na híomhá PNG beoite róbheag", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Earráid le huaslódáil íomhánna: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Ní féidir nascadh le freastalaí: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Theip ar uaslódáil íomhánna de dheasca faisnéis aitheantais atá as feidhm. Oscail an suíomh gréasáin ó Dheasc Signal arís.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Nasc cóipeáilte", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mo ghreamán i dtéama éadrom", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mo ghreamán i dtéama dorcha", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Socraigh Signal ar do ghuthán agus ríomhaire deisce leis an gCruthaitheoir Beart Greamán a úsáid", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Saincheap freagairtí", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Ailias emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/gl-ES/messages.json b/sticker-creator/src/assets/locales/gl-ES/messages.json new file mode 100644 index 000000000..20c8372fa --- /dev/null +++ b/sticker-creator/src/assets/locales/gl-ES/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Creador artístico de stickers" + }, + "index--create-sticker-pack" : { + "message" : "Crear un novo paquete de stickers" + }, + "SignIn--title" : { + "message" : "Crea un paquete de stickers", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "De igual maneira que todo o que ofrece Signal, os stickers tamén están encriptados. Emprega esta ferramenta para crear o teu propio paquete personalizado de stickers.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Código para iniciar sesión", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Abrir Signal Desktop para comezar", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "O teu navegador non é compatible. Abre esta ligazón en Firefox ou Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cancelar" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Non se atopou a emoticona", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Buscar emoticona", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Ton de pel $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Riseiros & Xente", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animais & Natureza", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Comida & Bebida", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viaxes & Lugares", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Actividades", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Obxectos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Símbolos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bandeiras", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Creador artístico de Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Creador de paquetes de stickers para Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo de Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Guía do creador de paquetes de stickers", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Premer para engadir ou soltar as imaxes aquí", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Soltar imaxes aquí", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paquete de stickers", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paquete de stickers", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cancelar", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copiar", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Seguinte", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Volver", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Engadir os teus stickers", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Eliminar imaxe", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Premer ou mover/soltar un arquivo para engadir un sticker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Os stickers deben ter un formato PNG, APNG ou WebP cun fondo transparente e 512x512 píxeles. As marxes recomendadas son 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ver marxes", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Engadir unha emoticona en cada sticker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Isto permítenos suxerirche stickers mentres escribes mensaxes.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Só uns detalles máis...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Título", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Nomea o teu paquete de stickers", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Introduce un nome para enviar os teus stickers", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imaxe da portada", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Esta é a imaxe que se amosará cando compartas o teu paquete de stickers", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Queres subir o teu paquete de stickers?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Subir", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Non poderás nin editar nin borrar nada despois de crear un paquete.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Creando o teu paquete de stickers", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ de $total$ subidos", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Parabéns! Creaches un paquete de stickers.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accede aos teus novos stickers a través da icona ou compárteos cos teus amigos empregando a seguinte ligazón.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Emprega a etiqueta $hashtag$ para que outras persoas atopen os URL de calquera paquete personalizado de stickers que queiras que sexa público.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL do paquete de stickers", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalar", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Crear outro paquete de stickers", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Bótalle un ollo ao novo paquete de stickers que creei para Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imaxe engadida} other {{count,number} imaxes engadidas}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "As imaxes animadas non son compatibles neste momento", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "A imaxe arrastrada é demasiado grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Erro ao procesar a imaxe", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "As imaxes PNG animadas deben ser cadradas", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "As imaxes animadas deben encadearse indefinidamente", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "As dimensións da imaxe PNG animada son demasiado grandes", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "As dimensións da imaxe PNG animada son demasiado pequenas", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Erro ao subir as imaxes: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Non se pode conectar co servidor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Erro ao subir as imaxes xa que caducaron as credenciais. Volve abrir o sitio web dende Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Ligazón copiada", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "O meu sticker en tema claro", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "O meu sticker en tema escuro", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Configura Signal no teu móbil e ordenador para empregar o creador de paquetes de stickers", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoticona", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizar as reaccións", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias da emoticona", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/gu-IN/messages.json b/sticker-creator/src/assets/locales/gu-IN/messages.json new file mode 100644 index 000000000..b3786d106 --- /dev/null +++ b/sticker-creator/src/assets/locales/gu-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "સ્ટીકર આર્ટ સર્જક" + }, + "index--create-sticker-pack" : { + "message" : "નવું સ્ટીકર પેક બનાવો" + }, + "SignIn--title" : { + "message" : "સ્ટીકર પેક બનાવો", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "અન્ય દરેક વસ્તુની જેમ જ Signalમાં, સ્ટીકર પણ એન્ક્રિપ્ટેડ છે. તમારા પોતાના કસ્ટમ સ્ટીકર પેક બનાવવા માટે આ ટૂલનો ઉપયોગ કરો.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "સાઇન ઇન કોડ", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "શરૂ કરવા માટે Signal ડેસ્કટોપ ઍપ ખોલો", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "માફ કરશો, તમારું બ્રાઉઝર સપોર્ટ કરતું નથી. કૃપા કરીને આ લિંકને Firefox અથવા Chromeમાં ખોલો", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "રદ કરો" + }, + "minutesAgo" : { + "message" : "$minutes$મિ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "કોઈ ઇમોજી મળ્યું નથી", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ઇમોજી શોધો", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "સ્કીન ટોન $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "સ્માઇલીઝ અને લોકો", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "પ્રાણીઓ અને કુદરત", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "ખોરાક અને પીણું", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "મુસાફરી અને સ્થળો", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "પ્રવત્તિઓ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "વસ્તુઓ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "ચિહ્નો", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "ફ્લેગ", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal આર્ટ સર્જક", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal સ્ટીકર પેક સર્જક", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal લોગો", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "સ્ટીકર પેક સર્જક માર્ગદર્શિકા", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "અહીં ફોટા ઉમેરવા કે ડ્રોપ કરવા માટે ક્લિક કરો", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ફોટા અહીં ડ્રોપ કરો", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "સ્ટીકર પેક", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "સ્ટીકર પેક", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "રદ કરો", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "કૉપિ કરો", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "આગળ", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "પાછળ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "તમારા સ્ટીકર ઉમેરો", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ફોટો દૂર કરો", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "સ્ટીકર ઉમેરવા માટે ક્લિક કરો અથવા ફાઇલ ડ્રેગ/ડ્રોપ કરો", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "પારદર્શક બૅકગ્રાઉન્ડ અને 512x512 પિક્સેલવાળા સ્ટીકર PNG, APNG અથવા WebP ફોર્મેટમાં હોવા આવશ્યક છે. ભલામણ કરેલું માર્જિન 16px છે.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "માર્જિન જુઓ", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "દરેક સ્ટીકરમાં ઇમોજી ઉમેરો", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "તમે મેસેજ કરી રહ્યા હો ત્યારે આ અમને સ્ટીકર સૂચવવાની મંજૂરી આપે છે.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "માત્ર થોડી વધુ વિગતો...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "શીર્ષક", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "તમારા સ્ટીકર પેકને નામ આપો", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "લેખક", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "તમારા સ્ટિકરને જે નામ હેઠળ સબમિટ કરવા હોય તે નામ દાખલ કરો", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "કવર ફોટો", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "આ તે ફોટો છે જે જ્યારે તમે તમારા સ્ટીકર પેકને શેર કરશો ત્યારે દેખાશે", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "શું તમે ખરેખર તમારું સ્ટીકર પેક અપલોડ કરવા માંગો છો?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "અપલોડ કરો", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "સ્ટીકર પેક બનાવ્યા પછી તમે તેમાં ફેરફાર કરી શકશો નહીં અથવા તેને ડિલીટ કરી શકશો નહીં.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "તમારું સ્ટીકર પેક બનાવવું", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$માંથી $count$ અપલોડ થયું", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "અભિનંદન! તમે એક સ્ટીકર પેક બનાવ્યું છે.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "સ્ટીકર આઇકન દ્વારા તમારા નવા સ્ટીકરને ઍક્સેસ કરો અથવા નીચેની લિંકનો ઉપયોગ કરીને તમારા મિત્રો સાથે શેર કરો.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "હેશટેગ $hashtag$નો ઉપયોગ કરો જે અન્ય લોકોને કોઈ પણ કસ્ટમ સ્ટીકર પેક માટે URL શોધવા માટે મદદ કરે છે જેને તમે સાર્વજનિક રીતે સુલભ બનાવવા માંગો છો.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "સ્ટીકર પેક URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ઇન્સ્ટોલ", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "અન્ય સ્ટીકર પેક બનાવો", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal માટે મેં બનાવેલ આ નવું સ્ટીકર પેક તપાસો. #પ્રાઇવસીઅકબંધરાખો", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 ફોટો ઉમેર્યો} other {{count,number} ફોટા ઉમેર્યા}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "એનિમેટેડ આર્ટ હાલમાં સપોર્ટ કરતી નથી", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ડ્રોપ કરેલી ઇમેજ ખૂબ મોટી છે", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ફોટા પર પ્રક્રિયા કરવામાં ભૂલ", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "એનિમેટેડ PNG ફોટા ચોરસ હોવા જોઈએ", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "એનિમેટેડ ફોટા કાયમ માટે ફરતા હોવા જોઈએ", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "એનિમેટેડ PNG ફોટાના પરિમાણો ખૂબ મોટા છે", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "એનિમેટેડ PNG ફોટાના પરિમાણો ખૂબ નાના છે", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ફોટા અપલોડ કરવામાં ભૂલ: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "સર્વર સાથે કનેક્ટ કરી શકાતું નથી: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "સમાપ્ત થઈ ગયેલ ઓળખપત્રોને કારણે ફોટો અપલોડ કરવામાં નિષ્ફળ. કૃપા કરીને Signal ડેસ્કટોપ પરથી વેબસાઇટ ફરીથી ખોલો.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "લિંક કૉપિ કરી", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "લાઇટ થીમમાં મારું સ્ટીકર", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ડાર્ક થીમમાં મારું સ્ટીકર", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "સ્ટીકર પેક સર્જકનો ઉપયોગ કરવા માટે કૃપા કરીને તમારા ફોન અને ડેસ્કટોપ પર Signal સેટ કરો", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ઇમોજી", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "પ્રતિક્રિયાઓ કસ્ટમાઇઝ કરો", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ઇમોજીનું ઉપનામ", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/he/messages.json b/sticker-creator/src/assets/locales/he/messages.json new file mode 100644 index 000000000..69b95719b --- /dev/null +++ b/sticker-creator/src/assets/locales/he/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "צייר הסטיקרים" + }, + "index--create-sticker-pack" : { + "message" : "יצירת חבילת סטיקרים חדשה" + }, + "SignIn--title" : { + "message" : "יצירת חבילת סטיקרים", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "ממש כמו עם כל דבר אחר ב–Signal, גם הסטיקרים מוצפנים. אפשר להשתמש בכלי הזה כדי ליצור חבילות סטיקרים משלך.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "קוד התחברות", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "פתיחת Signal לשולחן עבודה כדי להתחיל", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "מצטערים, הדפדפן שלך לא נתמך. צריך לפתוח את הלינק הזה ב–Firefox או Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ביטול" + }, + "minutesAgo" : { + "message" : "$minutes$ דק׳", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "לא נמצא אימוג׳י", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "חיפוש אמוג'י", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "גוון עור $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "סמיילים ואנשים", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "חיות וטבע", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "אוכל ושתייה", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "טיול ומקומות", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "פעילויות", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "חפצים", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "סמלים", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "דגלים", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "הצייר של Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "יוצר חבילות הסטיקרים של Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "לוגו Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "הנחיות של יוצר חבילות הסטיקרים", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "אפשר ללחוץ כדי להוסיף או לגרור תמונות לכאן", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "אפשר לגרור תמונות לכאן", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "חבילת סטיקרים", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "חבילת סטיקרים", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ביטול", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "העתקה", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "המשך", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "חזרה", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "הוספת הסטיקרים שלך", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "הסרת תמונה", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "צריך ללחוץ או לגרור ולשחרר קובץ כדי להוסיף סטיקר", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "סטיקרים חייבים להיות בפורמט PNG, APNG, או WebP עם רקע שקוף וברזולוציה של 512x512 פיקסלים. אנחנו ממליצים על שוליים של 16 פיקסלים.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "הצגת שוליים", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "הוספת אימוג'י לכל סטיקר", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "זה מאפשר לנו להציע לך סטיקרים במהלך ההתכתבות.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "רק עוד כמה פרטים…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "כותרת", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "שם חבילת הסטיקרים שלך", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "יוצר/ת", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "יש להכניס שם שתחתיו יפורסמו הסטיקרים", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "תמונת נושא", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "זאת התמונה שתופיע בזמן שיתוף חבילת הסטיקרים שלך", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "בטוח שבא לך להעלות את חבילת הסטיקרים שלך?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "העלאה", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "לא תהיה לך יותר אפשרות לערוך או למחוק לאחר יצירת חבילת סטיקרים.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "יוצרים את חבילת הסטיקרים שלך", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ מתוך $total$ הועלו", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "מזל טוב! יצרת חבילת סטיקרים.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "אפשר לגשת לסטיקרים החדשים שלך דרך סמל הסטיקר, או לשתף עם חברים באמצעות שימוש בקישור שלמטה.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "אפשר להשתמש בהאשטג $hashtag$ כדי לעזור לאנשים אחרים למצוא את כתובות ה–URL של חבילות הסטיקרים שלך שבא לך להפוך לציבוריות.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "כתובת URL של חבילת הסטיקרים", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "התקן", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "יצירת חבילת סטיקרים נוספת", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "תראו את חבילת הסטיקרים החדשה הזאת שיצרתי ל–Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {נוספה תמונה 1} two {נוספו {count,number} תמונות} many {נוספו {count,number} תמונות} other {נוספו {count,number} תמונות}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "אנימציה לא נתמכת כרגע", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "התמונה שנגררה גדולה מדי", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "שגיאה בעיבוד תמונה", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "תמונות PNG מונפשות חייבות להיות בצורת ריבוע", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "תמונות מונפשות צריכות להיות בלופ אינסופי", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "הממדים של תמונת PNG מונפשת גדולים מדי", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "הממדים של תמונת PNG מונפשת קטנים מדי", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "שגיאה בהעלאת תמונות: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "לא ניתן להתחבר לשרת: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "העלאת התמונות נכשלה עקב אישורים שאינם בתוקף. יש לפתוח את האתר מחדש מתוך Signal לשולחן עבודה.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "לינק הועתק", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "הסטיקר שלי בערכת נושא בהירה", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "הסטיקר שלי בערכת נושא כהה", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "צריך להגדיר את Signal בטלפון שלך ובשולחן העבודה כדי להשתמש ביוצר חבילות הסטיקרים", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "אימוג'י", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "תגובות מותאמות אישית", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "שם אימוג׳י", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/hi-IN/messages.json b/sticker-creator/src/assets/locales/hi-IN/messages.json new file mode 100644 index 000000000..a424a9949 --- /dev/null +++ b/sticker-creator/src/assets/locales/hi-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "स्टिकर आर्ट क्रिएटर" + }, + "index--create-sticker-pack" : { + "message" : "नया स्टिकर पैक बनाएँ" + }, + "SignIn--title" : { + "message" : "कोई स्टिकर पैक बनाएँ", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "जैसा कि Signal में बाकी सभी चीजें होती हैं, स्टिकर भी एन्क्रिप्टेड होते हैं। अपने खुद के कस्टम स्टिकर पैक बनाने के लिए इस टूल का उपयोग करें।", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "साइन इन कोड", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "शुरू करने के लिए Signal डेस्कटॉप खोलें", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "माफ करें, आपका ब्राउजर समर्थित नहीं है। कृपया इस लिंक को Firefox या Chrome में खोलें", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "रद्द करें" + }, + "minutesAgo" : { + "message" : "$minutes$ मिनट", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "इमोजी नहीं मिला", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "इमोजी खोजें", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "स्किन टोन $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "स्माइली और लोग", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "जानवर और प्रकृति", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "भोजन और ड्रिंक", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "सफर और जगहें", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "गतिविधियाँ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "वस्तुएँ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "चिन्ह", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "झंडे", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal आर्ट क्रिएटर", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal स्टिकर पैक क्रिएटर", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal लोगो", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "स्टिकर पैक क्रिएटर संबंधी दिशानिर्देश", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "यहाँ तस्वीरें जोड़ने या ड्रॉप करने के लिए क्लिक करें", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "यहाँ तस्वीरें ड्रॉप करें", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "स्टिकर पैक", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "स्टिकर पैक", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "रद्द करें", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "कॉपी", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "फेसबुक", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "पिंटेरेस्ट", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "व्हॉट्सऐप", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "अगला", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "पीछे जाएं", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "अपने स्टिकर जोडे़ं", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "छवि हटाएँ", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "स्टिकर लगाने के लिए किसी फ़ाइल को क्लिक या ड्रैग/ड्रॉप करें", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "स्टिकर PNG, APNG, या WebP फॉर्मैट में होने चाहिए और उनका बैकग्राउंड पारदर्शी होना चाहिए 512x512 पिक्सल के होने चाहिए। सिफारिश किया हुआ मार्जिन है 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "मार्जिन देखें", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "प्रत्येक स्टिकर में एक इमोजी जोड़ें", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "इससे हम जब आप मेसेज करते हैं, तब आपको स्टिकर का सुझाव दे सकते हैं।", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "बस कुछ और विवरण...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "शीर्षक", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "अपने स्टिकर पैक को नाम दें", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "लेखक", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "अपने स्टिकर निम्न के अंतर्गत सबमिट करने के लिए कोई नाम दर्ज करें", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "कवर तस्वीर", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "यह वह तस्वीर है जो तब दिखाई देगी जब आप अपना स्टिकर पैक शेयर करेंगे", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "क्या आप वाकई में अपना स्टिकर पैक अपलोड करना चाहते हैं?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "अपलोड करें", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "आप फिर स्टिकर पैक बनाने के बाद उसे एडिट या मिटा नहीं पाएँगे।", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "आपका स्टिकर पैक बनाया जा रहा है", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ का $count$ अपलोड हो गया", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "बधाई हो! आपने एक स्टिकर पैक बना लिया।", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "स्टिकर आइकन के ज़रिए अपने नए स्टिकर्स को एक्सेस करें, या नीचे दिए लिंक का उपयोग करते हुए इसे अपने दोस्तों के साथ शेयर करें।", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "अन्य लोगों को किसी भी कस्टम स्टिकर पैक के लिए URLs खोजने में मदद करने के लिए हैशटैग$hashtag$ का उपयोग करें जिसे आप सार्वजनिक रूप से सुलभ बनाना चाहते हैं।", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "स्टिकर पैक URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "इंस्टॉल करें", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "एक और स्टिकर पैक बनाएँ", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ये नया स्टिकर पैक देखें जो मैंने Signal के लिए बनाया है। #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 इमेज जोड़ी गई} other {{count,number} इमेज जोड़ी गईं}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "वर्तमान में एनिमेटेड आर्ट समर्थित नहीं है", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ड्रॉप की गई तस्वीर बहुत बड़ी है", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "तस्वीर प्रोसेस करने में त्रुटि", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "एनिमेटेड PNG तस्वीर चौरस होने चाहिए", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "एनिमेटेड तस्वीर हमेशा लूप में रहने चाहिए", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "एनिमेटेड PNG तस्वीर का आकार बहुत बड़ा है", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "एनिमेटेड PNG तस्वीर का आकार बहुत छोटा है", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "तस्वीर अपलोड करने में त्रुटि: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "सर्वर से कनेक्ट नहीं हो सकता: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "एक्सपायर हो चुके क्रेडेंशियल्स के कारण छवियां अपलोड करने में विफल। कृपया Signal डेस्कटॉप से वेबसाइट दोबारा फिर से खोलें।", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "लिंक कॉपी गिया", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "लाइट थीम में मेरा स्टिकर", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "डार्क थीम में मेरा स्टिकर", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "स्टिकर पैक क्रिएटर का उपयोग करने के लिए कृपया अपने फोन और डेस्कटॉप पर Signal को सेट अप करें", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "इमोजी", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "प्रतिक्रियाएँ कस्टमाइज़ करें", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "इमोजी उपनाम", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/hr-HR/messages.json b/sticker-creator/src/assets/locales/hr-HR/messages.json new file mode 100644 index 000000000..fa4cab843 --- /dev/null +++ b/sticker-creator/src/assets/locales/hr-HR/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Alat za kreativnu izradu naljepnica" + }, + "index--create-sticker-pack" : { + "message" : "Stvorite novi paket naljepnica" + }, + "SignIn--title" : { + "message" : "Stvorite paket naljepnica", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Baš kao i sve ostalo na Signalu, naljepnice su također šifrirane. Izradite personalizirane pakete naljepnica pomoću ovog alata.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kôd za prijavu", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Otvorite Signal za Desktop za početak", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Nažalost, vaš preglednik nije podržan. Otvorite ovu poveznicu u preglednicima Firefox ili Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Poništi" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nisu pronađeni emotikoni", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Pretraži emotikone", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Boja kože $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smajlići i osobe", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Životinje i priroda", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Hrana i piće", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Putovanja i mjesta", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivnosti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Predmeti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Zastave", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signalov alat za kreativce", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signalov alat za izradu naljepnica", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signalov logotip", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Smjernice alata za izradu naljepnica", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliknite ovdje za dodavanje ili ispuštanje slika", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Ispustite slike ovdje", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paket naljepnica", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paket naljepnica", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Poništi", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiraj", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Dalje", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Natrag", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Dodajte svoje naljepnice", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Ukloni sliku", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kliknite ili povucite/ispustite datoteku da biste dodali naljepnicu", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Naljepnice moraju biti u PNG, APNG ili WebP formatu s prozirnom pozadinom i veličine 512x512 piksela. Preporučena margina iznosi 16 piksela.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Prikaži margine", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Dodajte emotikon svakoj naljepnici", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Ovo nam omogućuje da vam predlažemo naljepnice dok razmjenjujete poruke.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Još samo nekoliko detalja…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Naslov", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Dodijelite naslov svom paketu naljepnica", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Upišite ime pod kojim želite podijeliti svoje naljepnice", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Naslovna slika", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ovo je slika koja će se pojaviti kada podijelite svoj paket naljepnica", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Jeste li sigurni da želite učitati svoj paket naljepnica?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Učitaj", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Nakon izrade paketa naljepnica više ga nećete moći uređivati niti brisati.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Stvaranje vašeg paketa naljepnica", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ od $total$ učitano", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Čestitamo! Stvorili ste paket naljepnica.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Pristupite svojim novim naljepnicama putem ikone naljepnice ili ih podijelite s prijateljima putem poveznice u nastavku.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Upotrijebite hashtag $hashtag$ da biste drugima pomogli da pronađu URL-ove svih personaliziranih paketa naljepnica koje želite učiniti javno dostupnima.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL paketa naljepnica", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instaliraj", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Stvori novi paket naljepnica", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Pogledaj moj novi paket naljepnica na Signalu. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Dodana je {count,number} fotografija} few {Dodane su {count,number} fotografije} many {Dodano je {count,number} fotografija} other {Dodano je {count,number} fotografija}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animirane slike trenutno nisu podržane", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Ispuštena slika je prevelika", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Pogreška pri obradi slike", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animirane PNG slike moraju biti kvadratnog formata", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animirane slike moraju se neprekidno ponavljati", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimenzije animirane PNG slike su prevelike", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimenzije animirane PNG slike su premale", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Pogreška pri učitavanju slika: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Povezivanje s poslužiteljem nije uspjelo: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Prijenos slika nije uspio zbog nevažećih korisničkih podataka. Molimo, ponovno učitajte web lokaciju sa Signala za Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Poveznica je kopirana", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moja naljepnica u svijetloj temi", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moja naljepnica u tamnoj temi", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Postavite Signal na telefonu i računalu da biste koristili alat za stvaranje paketa naljepnica", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emotikon", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Prilagodite reakcije", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Pseudonim emotikona", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/hu/messages.json b/sticker-creator/src/assets/locales/hu/messages.json new file mode 100644 index 000000000..404d5c880 --- /dev/null +++ b/sticker-creator/src/assets/locales/hu/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Matricakészítő" + }, + "index--create-sticker-pack" : { + "message" : "Új matricacsomag létrehozása" + }, + "SignIn--title" : { + "message" : "Hozz létre egy matricacsomagot", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Csakúgy, mint minden másnál a Signalban, a matricák is titkosítottak. Ezzel az eszközzel saját egyéni matricacsomagokat hozhatsz létre.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Bejelentkezési kód", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "A kezdéshez nyisd meg a Signal asztali gépről elérhető alkalmazását", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Sajnáljuk, a böngésződ nem támogatott. Kérjük, nyisd meg ezt a hivatkozást Firefoxban vagy Chrome-ban", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Mégsem" + }, + "minutesAgo" : { + "message" : "$minutes$ p", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nem található hangulatjel", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Hangulatjel keresése", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Bőrszín: $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smiley-k és emberek", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Állatok és természet", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Étel-ital", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Utazás és helyek", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Tevékenységek", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Tárgyak", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Szimbólumok", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Zászlók", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Matricakészítő", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal matricacsomag-készítő", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logó", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Matricacsomag-készítési útmutató", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "A hozzáadáshoz kattints ide, vagy húzd be a képeket", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Húzd ide a képeket", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Matricacsomag", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Matricacsomag", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Mégse", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Másolás", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Következő", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Vissza", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Add hozzá a saját matricáidat", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Kép eltávolítása", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Matrica hozzáadásához kattints ide, vagy húzz be egy fájlt", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "A matricáknak PNG, APNG vagy WebP formátumúnak kell lenniük, és átlátszó háttérrel, valamint 512x512 pixeles mérettel kell rendelkezniük. A margó javasolt mérete 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Margók megtekintése", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Adj hangulatjelet az összes matricához", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Ez lehetővé teszi számunkra, hogy beszélgetés közben matricákat javasoljunk neked.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Már csak néhány dolog hiányzik…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Cím", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Nevezd el a matricacsomagod", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Alkotó", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Adj meg egy nevet a matricák beküldéséhez", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Borítókép", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ez a kép fog megjelenni a matricacsomag megosztása során", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Biztosan fel szeretnéd tölteni a matricacsomagodat?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Feltöltés", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "A matricacsomag létrehozását követően már nem lesz lehetőséged szerkesztésre vagy törlésre.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Matricacsomag létrehozása", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$/$total$ feltöltve", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulálunk! Létrehoztál egy matricacsomagot.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Az új matricákhoz a matrica ikonnal férhetsz hozzá, de megoszthatod a lenti hivatkozás segítségével is.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Használd a(z) $hashtag$ hashtaget, hogy mások is megtalálják az olyan egyéni matricacsomagjaidat, amelyeket nyilvánosan meg szeretnél osztani.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Matricacsomag URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Telepítés", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Újabb matricacsomag létrehozása", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Nézd meg az új Signal-matricacsomagomat! #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 kép hozzáadva} other {{count,number} kép hozzáadva}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Az animált kép jelenleg nem támogatott", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "A behúzott kép mérete túl nagy", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Hiba történt a kép feldolgozása során", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Az animált PNG-képeknek négyzet alakúaknak kell lenniük", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Az animált képeknek folyamatosan kell futniuk", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Az animált PNG-kép méretei túl nagyok", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Az animált PNG-kép méretei túl kicsik", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Hiba a képek feltöltésekor: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nem lehet csatlakozni a következő szerverhez: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "A lejárt hitelesítő adatok miatt nem sikerült feltölteni a képeket. Nyisd meg újra a weboldalt a Signal Desktopból.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Hivatkozás másolva", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Matricám a világos témában", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Matricám a sötét témában", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "A Signal matricacsomag-készítő használatához állítsd be a Signalt a telefonodon, valamint az asztali alkalmazáson is", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Hangulatjel", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Egyedi reakciók", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Hangulatjel név", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/id/messages.json b/sticker-creator/src/assets/locales/id/messages.json new file mode 100644 index 000000000..d97dcc508 --- /dev/null +++ b/sticker-creator/src/assets/locales/id/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Pembuat Seni Stiker" + }, + "index--create-sticker-pack" : { + "message" : "Buat paket stiker baru" + }, + "SignIn--title" : { + "message" : "Buat Paket Stiker", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Sama seperti semua hal lain di Signal, stiker juga dienkripsi. Gunakan alat ini untuk membuat paket stiker kustom Anda sendiri.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kode Masuk", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Buka Signal Desktop untuk Memulai", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Maaf, browser Anda tidak didukung. Silakan buka tautan ini di Firefox atau Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Batal" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Tidak ditemukan emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Cari Emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Warna kulit $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smiley & Orang", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Binatang & Alam", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Makanan & Minuman", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Perjalanan & Tempat", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivitas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objek", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simbol", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bendera", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Pembuat Seni Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Pembuat Paket Stiker Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Panduan Pembuat Paket Stiker", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klik untuk menambah atau melepas gambar di sini", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Lepas gambar di sini", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paket stiker", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paket stiker", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Batal", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Salin", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Berikutnya", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Kembali", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Tambahkan stiker Anda", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Hapus gambar", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klik atau seret/lepaskan file untuk menambahkan stiker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Stiker harus dalam format PNG, APNG, atau WebP dengan latar transparan dan berukuran 512x512 piksel. Margin yang disarankan adalah 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Lihat margin", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Tambahkan emoji ke setiap stiker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Memungkinkan kami menyarankan stiker saat Anda menulis pesan.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Beberapa detail tambahan...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Judul", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Beri nama paket stiker Anda", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Pembuat", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Masukkan nama pembuat stiker", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Gambar sampul", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Inilah gambar yang akan ditampilkan saat Anda membagikan paket stiker", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Yakin ingin mengunggah paket stiker Anda?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Unggah", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Anda tidak dapat mengedit atau menghapus setelah selesai membuat paket stiker.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Membuat paket stiker Anda", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ dari $total$ diunggah", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Selamat! Anda telah membuat paket stiker.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Akses stiker baru Anda melalui ikon stiker, atau bagikan kepada teman menggunakan tautan di bawah.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Gunakan tagar $hashtag$ untuk membantu orang lain menemukan URL paket stiker kustom yang ingin Anda jadikan publik.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL Paket Stiker", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Pasang", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Buat paket stiker lain", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Lihat paket stiker baru yang saya buat di Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} gambar ditambahkan}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Seni animasi saat ini tidak didukung", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Ukuran gambar terlalu besar", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Terjadi kesalahan saat memproses gambar", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Gambar PNG animasi harus berbentuk persegi", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Gambar animasi harus selalu bergerak berulang-ulang", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensi gambar PNG animasi terlalu besar", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensi gambar PNG animasi terlalu kecil", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Terjadi kesalahan saat mengunggah gambar: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Tidak dapat tersambung ke server: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Gagal mengunggah gambar karena kredensial kedaluwarsa. Harap buka kembali situs web dari Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Tautan disalin", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Stiker saya dengan tema terang", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Stiker saya dengan tema gelap", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Siapkan Signal pada ponsel dan komputer Anda untuk menggunakan Pembuat Paket Stiker", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Atur tanggapan kustom", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/it/messages.json b/sticker-creator/src/assets/locales/it/messages.json new file mode 100644 index 000000000..3a241dd2b --- /dev/null +++ b/sticker-creator/src/assets/locales/it/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Creatore di sticker" + }, + "index--create-sticker-pack" : { + "message" : "Crea un nuovo pacchetto di sticker" + }, + "SignIn--title" : { + "message" : "Crea un pacchetto di sticker", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Come qualsiasi contenuto su Signal, anche gli sticker sono crittografati. Usa questo strumento per creare dei pacchetti di sticker personalizzati.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Codice per l'accesso", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Apri Signal sul desktop per iniziare", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Spiacenti, il tuo browser non è supportato. Apri il link in Firefox o Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Annulla" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nessuna emoji trovata", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Cerca emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Tonalità pelle $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Faccine e Persone", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animali e Natura", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Cibo e Bevande", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viaggi e Luoghi", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Attività", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Oggetti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bandiere", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Creatore di Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Creatore di pacchetti di adesivi di Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Linee guida per la creazione di pacchetti di sticker", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Fai clic per aggiungere o rilascia le immagini qui", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Rilascia le immagini qui", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pacchetto di sticker", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pacchetto di sticker", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Annulla", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copia", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Avanti", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Indietro", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Aggiungi i tuoi sticker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Rimuovi immagine", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Clicca o trascina un file per aggiungere uno sticker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Gli sticker devono essere in formato PNG, APNG o WebP con uno sfondo trasparente e 512x512 pixel. Il margine consigliato è di 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Visualizza i margini", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Aggiungi un'emoji a ogni sticker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Questo ci permette di suggerirti gli adesivi mentre stai inviando messaggi.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Solo qualche altro dettaglio…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titolo", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Dai un nome al tuo pacchetto di sticker", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autore", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Inserisci un nome per salvare gli sticker come", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Immagine di copertina", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Questa è l'immagine che apparirà quando condividi il tuo pacchetto di adesivi", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Confermi di voler caricare il tuo pacchetto di sticker?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Carica", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Dopo la creazione del pacchetto di sticker, non sarà più possibile eliminare nulla o effettuare modifiche.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Creazione del tuo pacchetto di sticker in corso", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ di $total$ caricati", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Congratulazioni! Hai creato un pacchetto di sticker.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accedi ai tuoi nuovi sticker tramite l'apposita icona o condividili con i tuoi amici con il link in basso.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Usa l'hashtag $hashtag$ per aiutare altre persone a trovare gli URL per ogni pacchetto di sticker personalizzato che vuoi rendere pubblico.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL pacchetto sticker", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installa", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Crea un altro pacchetto di sticker", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Dai un'occhiata a questo nuovo pacchetto di adesivi che ho creato per Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Aggiunta 1 immagine} other {Aggiunte {count,number} immagini}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "I contenuti animati non sono supportati al momento", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "L'immagine caricata è troppo grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Errore nell'elaborazione dell'immagine", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Le immagini animate in PNG devono essere quadrate", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Le immagini animate devono essere in loop", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Le dimensioni dell'immagine animata in PNG sono troppo grandi", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Le dimensioni dell'immagine animata in PNG sono troppo piccole", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Errore nel caricamento delle immagini: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Impossibile connettersi al server: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Non è stato possibile caricare le immagini a causa delle credenziali scadute. Entra di nuovo sul sito dall'app per desktop di Signal.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link copiato", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Il mio sticker con tema chiaro", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Il mio sticker con tema scuro", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Installa Signal sul tuo telefono e sul desktop per usare il creatore di pacchetti di adesivi", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizza reazioni", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nome emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ja/messages.json b/sticker-creator/src/assets/locales/ja/messages.json new file mode 100644 index 000000000..d32d4f9fa --- /dev/null +++ b/sticker-creator/src/assets/locales/ja/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ステッカーアートクリエーター" + }, + "index--create-sticker-pack" : { + "message" : "新しいステッカーパックを作成します" + }, + "SignIn--title" : { + "message" : "ステッカーパックを作成する", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signalが提供するすべての通信機能と同様に、ステッカーも暗号化されています。このツールを使って、自分だけのオリジナルステッカーパックを作りましょう。", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "パスワードでサインインする", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Signal Desktopを開いて開始", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "申し訳ありませんが、お使いのブラウザはサポートされていません。このリンクは、FirefoxもしくはChromeで開いてください", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "キャンセル" + }, + "minutesAgo" : { + "message" : "$minutes$分前", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "該当する絵文字はありません", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "絵文字を検索", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "肌色: $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "顔文字と人", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "動物と自然", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "食べ物と飲み物", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "旅行と場所", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "活動", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "オブジェクト", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "記号", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "旗", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signalアートクリエーター", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signalステッカーパッククリエーター", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signalのロゴ", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "ステッカーパッククリエイターのガイドライン", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "クリックで追加するかここに画像をドロップ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ここに画像をドロップしてください", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "ステッカーパック", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "ステッカーパック", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "キャンセル", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "コピー", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "次へ", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "戻る", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "ステッカーを追加", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "画像を削除する", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "ファイルをクリックまたはドラッグ/ドロップしてステッカーを追加します", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "ステッカーは、背景が透明で512x512ピクセルの、PNG、APNGまたはWebP形式の画像である必要があります。推奨マージンは16pxです。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "マージンを表示", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "各ステッカーに絵文字を追加", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "これを設定すると、メッセージ入力中にステッカーを表示することができます。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "詳細情報の入力", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "タイトル", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "ステッカーパックの名前を付けます", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "制作者", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "送信するステッカーの制作者名を入力します", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "カバー画像", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "このステッカーパックを共有した時に表示される画像です", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "本当にステッカーパックをアップロードしますか?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "アップロード", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "ステッカーパックは作成後に、編集や削除を行うことができません。", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "ステッカーパックを作成中", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$件のうち$count$件がアップロード済み", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "おめでとうございます。ステッカーパックの作成が完了しました。", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "ステッカーアイコンからこのステッカーを使用したり、以下のリンクを友達と共有することができます。", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "ハッシュタグ $hashtag$ を使って、公開したいと思うカスタムステッカーパックの URL を他の人が見つけられるようにしましょう。", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "ステッカーパックのURL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "インストール", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "別のステッカーパックを作成する", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signalのステッカーパックを作成しましたので、ご覧ください。 #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} 件の画像を追加しました}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "アニメーションアートは現在サポートされていません", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "追加された画像のサイズが制限を超えています。", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "画像の処理中にエラーが発生しました。", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "正方形でないアニメーションPNG画像はサポートしていません", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "アニメーション画像は永続的にループするように設定してください", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "アニメーションPNG画像が大きすぎます", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "アニメーションPNG画像が小さすぎます", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "画像のアップロード中にエラーが発生しました:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "サーバーに接続できませんでした: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "認証情報の期限切れのため、画像をアップロードできませんでした。再度、Signal Desktopからウェブサイトを開き直してください。", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "リンクをコピーしました", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ライトテーマでのステッカー", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ダークテーマでのステッカー", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Sticker Pack Creatorを使うには、Signalを携帯電話とデスクトップで設定してください。", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "絵文字", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "リアクションのカスタマイズ", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "絵文字の別名", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ka-GE/messages.json b/sticker-creator/src/assets/locales/ka-GE/messages.json new file mode 100644 index 000000000..d02c5291f --- /dev/null +++ b/sticker-creator/src/assets/locales/ka-GE/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "სტიკერის ხელოვნების შემქმნელი" + }, + "index--create-sticker-pack" : { + "message" : "შექმენი სტიკერების ახალი ნაკრები" + }, + "SignIn--title" : { + "message" : "შექმენი სტიკერების ნაკრები", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "ისევე, როგორც სხვა ყველაფერი Signal-ში, სტიკერებიც დაშიფრულია. გამოიყენე ეს აპი, რათა შენზე მორგებული სტიკერების ნაკრები შექმნა.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "შესასვლელი კოდი", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "დასაწყებად გახსენი Signal Desktop-ი", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ვწუხვართ, შენი ბრაუზერის მხარდაჭერა არ გვაქვს. გთხოვთ, ეს ბმული Firefox-სა ან Chrome-ში გახსნა", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "გაუქმება" + }, + "minutesAgo" : { + "message" : "$minutes$ წთ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "emoji არ მოიძებნა", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Emoji-ს ძებნა", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "კანის ფერი $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "სმაილები & ადამიანები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "ცხოველები & ბუნება", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "საკვები & სასმელები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "მოგზაურობა & ადგილები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "აქტივობები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "ობიექტები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "სიმბოლოები", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "დროშები", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal-ის ხელოვნების შემქმნელი", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal-ის სტიკერების ნაკრების შემქმნელი", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-ის ლოგო", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "სტიკერების ნაკრების შემქმნელის გაიდლაინები", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "დააჭირე სურათების დასამატებლად ან გადმოიტანე ისინი აქ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "გადმოიტანე სურათები აქ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "სტიკერების ნაკრები", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "სტიკერების ნაკრები", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "გაუქმება", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "დაკოპირება", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "შემდეგი", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "უკან", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "დაამატე შენი სტიკერები", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "სურათის წაშლა", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "დააჭირე ან გადმოიტანე/ჩააგდე ფაილი, რომ სტიკერი დაამატო", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "სტიკერები უნდა იყოს PNG, APNG ან WebP ფორმატში, გამჭვირვალე ფონით და 512x512 პიქსელით. რეკომენდებული ზღვარი 16 პიქსელია.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "საზღვრების ნახვა", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "დაამატე emoji თითოეულ სტიკერს", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "ეს საშუალებას გვაძლევს შეტყობინებების გაგზავნისას სტიკერები შემოგთავაზოთ.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "კიდევ რამდენიმე დეტალი…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "სათაური", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "დაარქვი სახელი შენი სტიკერების ნაკრებს", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "ავტორი", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "შეიყვანე სახელი, რომლის ქვეშაც გსურს სტიკერების ატვირთვა", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "ყდის სურათი", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "ეს სურათი გამოჩნდება შენი სტიკერების ნაკრების გაზიარებისას", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "დარწმუნებული ხარ, რომ გსურს შენი სტიკერების ნაკრების ატვირთვა?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "ატვირთვა", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "სტიკერების ნაკრების შექმნის შემდეგ მათ რედაქტირებას ან წაშლას ვეღარ შეძლებ.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "შენი სტიკერების ნაკრების შექმნა", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$-დან $count$ აიტვირთა", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "გილოცავთ! შენ სტიკერების ნაკრები შექმენი.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "შენი ახალი სტიკერების სანახავად სტიკერის ხატულა გამოიყენე, ან გაუზიარე ისინი შენს მეგობრებს ქვემოთ მოცემული ბმულით.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "გამოიყენე ჰეშთეგი $hashtag$, რათა დაეხმარო სხვა ადამიანებს იპოვონ URL-ები ნებისმიერი არასტანდარტული სტიკერების ნაკრებისთვის, რომლებიც გსურს საჯაროდ ხელმისაწვდომი გახადო.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "სტიკერების ნაკრების URL-ი", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "გადმოწერა", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "სხვა სტიკერების ნაკრეის შექმნა", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ნახე სტიკერების ეს ნაკრები, რომელიც Signal-ისთვის შევქმენი. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {დამატებულია 1 სურათი} other {დამატებულია {count,number} სურათი}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ამჟამად ანიმაციების მხარდაჭერა არ გვაქვს", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ჩაგდებული სურათი ზედმეტად დიდია", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "სურათის დამუშავებისას ხარვეზი მოხდა", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "ანიმაციური PNG გამოსახულება კვადრატული უნდა იყოს", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "ანიმაციური გამოსახულება მუდმივად უწყვეტი უნდა იყოს", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ანიმაციური PNG გამოსახულების ზომები ძალიან დიდია", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ანიმაციური PNG გამოსახულების ზომები ძალიან პატარაა", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "სურათების ატვირთვისას მოხდა ხარვეზი: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "სერვერთან დაკავშირება ვერ მოხერხდა: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "სურათების ატვირთვა ვერ მოხერხდა ვადაგასული ავტორიზაციის გამო. გთხოვთ, ვებსაიტი Signal Desktop-დან თავიდან გახსნა.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "ბმული დაკოპირდა", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ჩემი სტიკერი ღია ფერებში", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ჩემი სტიკერი მუქ ფერებში", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Sticker Pack Creator გამოსაყენებლად გთხოვთ, დააყენო Signal-ი შენს მობილურსა და კომპიუტერზე", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "რეაქციების პერსონალიზირება", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-ის მეტსახელები", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/kk-KZ/messages.json b/sticker-creator/src/assets/locales/kk-KZ/messages.json new file mode 100644 index 000000000..17128ca9f --- /dev/null +++ b/sticker-creator/src/assets/locales/kk-KZ/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Стикерлер өнерінің авторы" + }, + "index--create-sticker-pack" : { + "message" : "Жаңа стикерлер жинағын жасау" + }, + "SignIn--title" : { + "message" : "Стикерлер жинағын жасау", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal-дағы барлық ақпарат сияқты стикерлер де шифрланған. Осы құрал көмегімен өзіңіздің қалаған стикерлер жинағыңызды жасаңыз.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Кіру коды", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Бастау үшін Signal-дың компьютерлік нұсқасын ашыңыз", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Кешіріңіз, браузеріңізге қолдау көрсетілмейді. Бұл сілтемені Firefox немесе Chrome браузерінен ашыңыз", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Бас тарту" + }, + "minutesAgo" : { + "message" : "$minutes$ мин", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Эмодзи табылмады", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Эмодзиді іздеу", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Тері реңкі $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Смайлдар және адамдар", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Жан-жануарлар және табиғат", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Тағамдар мен сусындар", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Саяхат және қызықты жерлер", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Іс-әрекет", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Заттар", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Белгілер", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Тулар", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal-дағы өнер туындылары авторы", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal стикерлер жинағының авторы", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal логотипі", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Стикерлер жинағының авторына арналған нұсқаулар", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Суреттерді осы жерге қосу немесе сүйреп әкелу үшін басыңыз", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Суреттерді осы жерге сүйреп әкеліңіз", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Стикерлер жинағы", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Стикерлер жинағы", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Бас тарту", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Көшіру", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Келесі", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Артқа", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Стикерлер қосу", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Суретті өшіру", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Стикер қосу үшін файлды басыңыз немесе сүйреп әкеліңіз", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Стикерлер PNG, APNG немесе WebP форматында фонсыз және 512x512 пиксель болуы керек. Ұсынылатын жиек – 16 пиксель.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Жиектерді көру", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Әрбір стикерге эмодзи қосу", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Бұл хат алмасу кезінде сізге стикерлер ұсынуға мүмкіндік береді.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Тағы бірнеше мәлімет...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Тақырып", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Стикерлер жинағыңызға ат беріңіз", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Стикерлерді қандай атпен жіберетініңізді енгізіңіз", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Мұқаба суреті", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Бұл – стикерлер жинағын бөліскен кезде көрсетілетін сурет", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Стикерлер жинағыңызды жүктеп салуға сенімдісіз бе?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Жүктеп салу", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Стикерлер жинағын жасағаннан кейін өңдей немесе жоя алмайсыз.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Стикерлер жинағын жасау", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ / $total$ жүктеп салынды", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Құттықтаймыз! Сіз стикерлер жинағын жасадыңыз.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Стикер белгішесін басып, жаңа стикерлерді көріңіз немесе төменгі сілтеме арқылы достарыңызбен бөлісіңіз.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Басқа адамдар да сіздің жалпыға қолжетімді еткіңіз келетін кез келген реттелмелі стикер жинақтарының URL мекенжайларын табуы үшін $hashtag$ хэштегін пайдаланыңыз.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Стикерлер жинағының URL мекенжайы", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Орнату", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Басқа стикерлер жинағын жасау", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Мен Signal үшін жасаған жаңа стикерлер жинағымды көріңіз. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 сурет қосылды} other {{count,number} сурет қосылды}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Анимациялық өнер туындысына қазір қолдау көрсетілмейді", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Сүйреп қойылған сурет тым үлкен", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Суретті өңдеу кезінде қате шықты", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимациялық PNG суретері шаршы пішіндес болуы тиіс", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимациялық суреттер тоқтамай ойнап тұруы керек", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Анимациялық PNG суреттерінің өлшемдері тым үлкен", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Анимациялық PNG суреттерінің өлшемдері тым кішкентай", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Суреттерді жүктеп салу кезінде қате шықты: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Серверге қосылу мүмкін емес: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Жүйеге кіру деректерінің мерзімі өтіп кеткендіктен, суреттер жүктеп салынбады. Signal-дың компьютердегі нұсқасымен веб-сайтты қайта ашыңыз.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Сілтеме көшірілді", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Жарық тақырыбындағы менің стикерім", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Күңгірт тақырыбындағы менің стикерім", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Стикерлер жинағының генераторын пайдалану үшін телефоныңыз бен компьютеріңізге Signal қолданбасын орнатыңыз", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Эмодзи", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Реакцияларды бейімдеу", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Эмодзидің лақап аты", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/km-KH/messages.json b/sticker-creator/src/assets/locales/km-KH/messages.json new file mode 100644 index 000000000..cc5bb616f --- /dev/null +++ b/sticker-creator/src/assets/locales/km-KH/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ឧបករណ៍បង្កើតសិល្បៈស្ទីគ័រ" + }, + "index--create-sticker-pack" : { + "message" : "បង្កើតកញ្ចប់ស្ទីគ័រថ្មី" + }, + "SignIn--title" : { + "message" : "បង្កើតកញ្ចប់ស្ទីគ័រ", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "ដូចអ្វីៗផ្សេងទៀតនៅក្នុង Signal ដែរ ស្ទីគ័រក៏ត្រូវបានអ៊ីនគ្រីបផងដែរ។។ ប្រើឧបករណ៍នេះដើម្បីបង្កើតកញ្ចប់ស្ទីគ័រផ្ទាល់ខ្លួនរបស់អ្នក។", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "កូដសម្រាប់ចូល", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "បើក Signal Desktop ដើម្បីចាប់ផ្តើម", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "សូមអភ័យទោស កម្មវិធីរុករករបស់អ្នកមិនអាចប្រើបានទេ។ សូមបើកតំណនេះនៅក្នុង Firefox ឬ Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "បោះបង់" + }, + "minutesAgo" : { + "message" : "$minutes$ នាទី", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "រកមិនឃើញរូបអារម្មណ៍ទេ", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ស្វែងរករូបអារម្មណ៍", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "ពណ៌ស្បែក $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "រូបមុខញញឹម និងមនុស្ស", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "សត្វ និងធម្មជាតិ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "អាហារ និងភេសជ្ជៈ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ការធ្វើដំណើរ និងទីកន្លែង", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "សកម្មភាព", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "វត្ថុ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "សញ្ញា", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "ទង់", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "ឧបករណ៍បង្កើតសិល្បៈ Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "ឧបករណ៍បង្កើតកញ្ចប់ស្ទីគ័រ Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "និមិត្តសញ្ញា Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "គោលការណ៍ណែនាំអំពីឧបករណ៍បង្កើតកញ្ចប់ស្ទីគ័រ", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ចុចដើម្បីបញ្ចូល ឬទម្លាក់រូបភាពនៅទីនេះ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ទម្លាក់រូបភាពនៅទីនេះ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "កញ្ចប់ស្ទីកគ័រ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "កញ្ចប់ស្ទីកគ័រ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "បោះបង់", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "ចម្លង", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "បន្ទាប់", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "ត្រឡប់ក្រោយ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "បញ្ចូលស្ទីកគ័ររបស់អ្នក", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ដករូបភាពចេញ", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "ចុច ឬអូស/ទម្លាក់ឯកសារ ដើម្បីបញ្ចូលស្ទីគ័រ", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "ស្ទីគ័រត្រូវតែមានទម្រង់ជា PNG, APNG ឬ WebP ដែលមានផ្ទៃខាងក្រោយច្បាស់ ហើយមានទំហំ 512x512 ភីកស៊ែល។ គួរតែមានរឹម 16px។", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "មើលរឹម", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "បញ្ចូលរូបអារម្មណ៍ទៅស្ទីកគ័រនីមួយៗ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "វាអាចឲ្យយើងណែនាំស្ទីកគ័រទៅអ្នកបាន ពេលអ្នកកំពុងផ្ញើសារ។", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "គ្រាន់តែព័ត៌មានលម្អិតបន្តិចទៀតប៉ុណ្ណោះ…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ចំណងជើង", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "ដាក់ឈ្មោះកញ្ចប់ស្ទីគ័ររបស់អ្នក", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "អ្នកនិពន្ធ", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "បញ្ចូលឈ្មោះដើម្បីដាក់បញ្ជូនស្ទីគ័ររបស់អ្នក", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "រូបភាពក្រប", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "នេះគឺជារូបភាពដែលនឹងត្រូវបង្ហាញនៅពេលអ្នកចែករំលែកកញ្ចប់ស្ទីកគ័ររបស់អ្នក", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "តើអ្នកប្រាកដជាចង់បង្ហោះកញ្ចប់ស្ទីកគ័ររបស់អ្នកឬ?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "បង្ហោះ", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "អ្នកនឹងមិនអាចធ្វើការកែ ឬលុបបានទៀតទេ បន្ទាប់ពីបង្កើតកញ្ចប់ស្ទីកគ័ររួច។", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "កំពុងបង្កើតកញ្ចប់ស្ទីកគ័ររបស់អ្នក", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "បានបង្ហោះ $count$ ក្នុងចំណោម $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "អបអរសាទរ! អ្នកបានបង្កើតកញ្ចប់ស្ទីកគ័រមួយ។", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "ចូលប្រើស្ទីកគ័រថ្មីរបស់អ្នក តាមរយៈរូបតំណាងស្ទីកគ័រ ឬចែករំលែកជាមួយមិត្តភក្តិរបស់អ្នក ដោយប្រើប្រាស់តំណខាងក្រោម។", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "ប្រើប្រាស់ hashtag $hashtag$ ដើម្បីជួយអ្នកដទៃស្វែងរកតំណសម្រាប់កញ្ចប់ស្ទីកគ័រណាមួយ ដែលអ្នកចង់ដាក់ឱ្យប្រើប្រាស់ជាសាធារណៈ។", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "តំណកញ្ចប់ស្ទីកគ័រ", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ដំឡើង", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "បង្កើតកញ្ចប់ស្ទីកគ័រមួយផ្សេងទៀត", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ឆែកមើលកញ្ចប់ស្ទីកគ័រថ្មីនេះដែលខ្ញុំបានបង្កើតសម្រាប់ Signal។ #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {បានបញ្ចូល {count,number} រូបភាព}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "បច្ចុប្បន្ននេះ សិល្បៈបែបជីវចលមិនអាចប្រើបានទេ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "រូបភាពដែលបានទម្លាក់ធំពេក", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "បញ្ហាដំណើរការរូបភាព", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "រូបភាព PNG ដែលមានចលនាត្រូវតែមានរាងការ៉េ", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "រូបភាពដែលមានចលនាត្រូវតែរង្វិលជុំជារៀងរហូត", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "វិមាត្ររូបភាព PNG ដែលមានចលនាធំពេក", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "វិមាត្ររូបភាព PNG ដែលមានចលនាតូចពេក", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "មានបញ្ហាក្នុងការបង្ហោះរូបភាព៖ $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "មិនអាចភ្ជាប់ទៅម៉ាស៊ីនមេ៖ $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "មិនអាចបង្ហោះរូបភាពបានដោយសារព័ត៌មានបញ្ជាក់អត្តសញ្ញាណផុតកំណត់។ សូមបើកគេហទំព័រឡើងវិញពី Signal Desktop ម្តងទៀត។", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "បានចម្លងតំណ", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ស្ទីកគ័ររបស់ខ្ញុំក្នុងផ្ទៃពណ៌ភ្លឺ", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ស្ទីកគ័ររបស់ខ្ញុំក្នុងផ្ទៃពណ៌ងងឹត", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "សូមរៀបចំ Signal នៅលើទូរសព្ទរបស់អ្នក និងកុំព្យូទ័រ ដើម្បីប្រើប្រាស់ឧបករណ៍បង្កើតកញ្ចប់ស្ទីកគ័រ", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "រូបអារម្មណ៍", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "កំណត់រូបប្រតិកម្មតាមបំណង", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ឈ្មោះរូបអារម្មណ៍", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/kn-IN/messages.json b/sticker-creator/src/assets/locales/kn-IN/messages.json new file mode 100644 index 000000000..ce3733b11 --- /dev/null +++ b/sticker-creator/src/assets/locales/kn-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಆರ್ಟ್ ಕ್ರಿಯೇಟರ್" + }, + "index--create-sticker-pack" : { + "message" : "ಹೊಸ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸಿ" + }, + "SignIn--title" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸಿ", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal ನಲ್ಲಿರುವ ಬೇರೆ ಎಲ್ಲವುಗಳಂತೆಯೇ, ಸ್ಟಿಕ್ಕರ್‌ಗಳು ಕೂಡಾ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಆಗಿವೆ. ನಿಮ್ಮ ಸ್ವಂತ ಕಸ್ಟಮ್ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್‌ಗಳನ್ನು ರಚಿಸಲು ಈ ಪರಿಕರವನ್ನು ಬಳಸಿ.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "ಸೈನ್ ಇನ್ ಕೋಡ್", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "ಪ್ರಾರಂಭಿಸಲು Signal Desktop ತೆರೆಯಿರಿ", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ಕ್ಷಮಿಸಿ, ನಿಮ್ಮ ಬ್ರೌಸರ್ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ. ದಯವಿಟ್ಟು ಈ ಲಿಂಕ್ ಅನ್ನು Firefox ಅಥವಾ Chrome ನಲ್ಲಿ ತೆರೆಯಿರಿ", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ರದ್ದುಗೊಳಿಸಿ" + }, + "minutesAgo" : { + "message" : "$minutes$ನಿ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ಯಾವುದೇ ಎಮೋಜಿ ಕಂಡುಬಂದಿಲ್ಲ", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ಎಮೋಜಿ ಹುಡುಕಿ", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "ಚರ್ಮದ ಟೋನ್ $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "ಸ್ಮೈಲೀಗಳು ಮತ್ತು ಜನರು", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "ಪ್ರಾಣಿಗಳು ಮತ್ತು ಪ್ರಕೃತಿ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "ಆಹಾರ ಮತ್ತು ಪಾನೀಯ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ಪ್ರಯಾಣ ಮತ್ತು ಸ್ಥಳಗಳು", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "ಚಟುವಟಿಕೆಗಳು", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "ವಸ್ತುಗಳು", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "ಚಿಹ್ನೆಗಳು", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "ಫ್ಲ್ಯಾಗ್‌ಗಳು", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal ಆರ್ಟ್ ಕ್ರಿಯೇಟರ್", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಕ್ರಿಯೇಟರ್", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal ಲೋಗೋ", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಕ್ರಿಯೇಟರ್ ಮಾರ್ಗಸೂಚಿಗಳು", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ಇಲ್ಲಿ ಚಿತ್ರಗಳನ್ನು ಸೇರಿಸಲು ಅಥವಾ ಡ್ರಾಪ್ ಮಾಡಲು ಕ್ಲಿಕ್ ಮಾಡಿ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ಚಿತ್ರಗಳನ್ನು ಇಲ್ಲಿ ಡ್ರಾಪ್ ಮಾಡಿ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ರದ್ದುಗೊಳಿಸಿ", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "ನಕಲಿಸಿ", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "ಮುಂದಕ್ಕೆ", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "ಹಿಂದಕ್ಕೆ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್‌ಗಳನ್ನು ಸೇರಿಸಿ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ಚಿತ್ರವನ್ನು ತೆಗೆದುಹಾಕಿ", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಸೇರಿಸಲು ಒಂದು ಫೈಲ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ ಅಥವಾ ಡ್ರ್ಯಾಗ್/ಡ್ರಾಪ್ ಮಾಡಿ", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "ಸ್ಟಿಕ್ಕರ್‌ಗಳು ಪಾರದರ್ಶಕ ಹಿನ್ನೆಲೆ ಹೊಂದಿದ್ದು, PNG, APNG ಅಥವಾ WebP ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿರಬೇಕು ಮತ್ತು 512x512 ಪಿಕ್ಸೆಲ್‌ಗಳು ಇರಬೇಕು. ಶಿಫಾರಸು ಮಾಡಿದ ಮಾರ್ಜಿನ್ 16px ಆಗಿದೆ.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "ಮಾರ್ಜಿನ್‌ಗಳನ್ನು ವೀಕ್ಷಿಸಿ", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ಪ್ರತಿ ಸ್ಟಿಕ್ಕರ್‌ಗೆ ಒಂದು ಎಮೋಜಿ ಸೇರಿಸಿ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "ನೀವು ಮೆಸೇಜ್ ಮಾಡುತ್ತಿರುವಾಗ ಸ್ಟಿಕ್ಕರ್‌ಗಳನ್ನು ಸಲಹೆ ಮಾಡಲು ಇದು ನಮಗೆ ಅನುವು ಮಾಡುತ್ತದೆ.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "ಇನ್ನು ಕೆಲವೇ ವಿವರಗಳು...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ಶೀರ್ಷಿಕೆ", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್‌ ಅನ್ನು ಹೆಸರಿಸಿ", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "ಲೇಖಕ", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್‌ಗಳನ್ನು ಇದರಡಿಯಲ್ಲಿ ಸಲ್ಲಿಸಲು ಹೆಸರು ನಮೂದಿಸಿ", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "ಕವರ್ ಚಿತ್ರ", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "ಇದು ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಅನ್ನು ನೀವು ಹಂಚಿಕೊಂಡಾಗ ಕಾಣಿಸಿಕೊಳ್ಳುವ ಚಿತ್ರ", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಅನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲು ನೀವು ಖಚಿತವಾಗಿಯೂ ಬಯಸುತ್ತೀರಾ?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "ಅಪ್‌ಲೋಡ್", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "ನೀವು ಇನ್ನು ಮುಂದೆ ಎಡಿಟ್‌ಗಳನ್ನು ಮಾಡಲು ಆಗದು ಅಥವಾ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸಿದ ನಂತರ ಅಳಿಸಲು ಆಗದು.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "ನಿಮ್ಮ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸುವುದು", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ ಪೈಕಿ $count$ ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗಿದೆ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "ಅಭಿನಂದನೆಗಳು! ನೀವು ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸಿದ್ದೀರಿ.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಐಕಾನ್ ಮೂಲಕ ನಿಮ್ಮ ಹೊಸ ಸ್ಟಿಕ್ಕರ್‌ಗಳನ್ನು ಆಕ್ಸೆಸ್ ಮಾಡಿ ಅಥವಾ ಈ ಕೆಳಗಿನ ಲಿಂಕ್ ಬಳಸಿ ನಿಮ್ಮ ಸ್ನೇಹಿತರೊಂದಿಗೆ ಹಂಚಿಕೊಳ್ಳಿ.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "ನೀವು ಸಾರ್ವಜನಿಕವಾಗಿ ಲಭ್ಯವಾಗಿಸಲು ಬಯಸಿದ ಯಾವುದೇ ಕಸ್ಟಮ್ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್‌ಗಳ URL ಗಳನ್ನು ಕಂಡುಕೊಳ್ಳಲು ಸಹಾಯ ಮಾಡುವುದಕ್ಕಾಗಿ $hashtag$ ಹ್ಯಾಶ್‌ಟ್ಯಾಗ್ ಬಳಸಿ.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ಸ್ಥಾಪಿಸಿ", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "ಇನ್ನೊಂದು ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ರಚಿಸಿ", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal ಗಾಗಿ ನಾನು ರಚಿಸಿದ ಹೊಸ ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 ಚಿತ್ರವನ್ನು ಸೇರಿಸಲಾಗಿದೆ} other {{count,number} ಚಿತ್ರಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ಅನಿಮೇಟೆಡ್ ಆರ್ಟ್ ಪ್ರಸ್ತುತ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ಡ್ರಾಪ್ ಮಾಡಿದ ಚಿತ್ರ ತುಂಬಾ ದೊಡ್ಡದಾಗಿದೆ", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ಚಿತ್ರ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಲ್ಲಿ ದೋಷ", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "ಅನಿಮೇಟೆಡ್ PNG ಚಿತ್ರಗಳು ಚೌಕಾಕರದಲ್ಲಿರಬೇಕು", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "ಅನಿಮೇಟೆಡ್ ಚಿತ್ರಗಳು ಯಾವತ್ತೂ ಲೂಪ್ ಆಗಿರಬೇಕು", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ಅನಿಮೇಟೆಡ್ PNG ಚಿತ್ರದ ಆಯಾಮಗಳು ತೀರಾ ದೊಡ್ಡದಾಗಿವೆ", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ಅನಿಮೇಟೆಡ್ PNG ಚಿತ್ರದ ಆಯಾಮಗಳು ತೀರಾ ಸಣ್ಣದಾಗಿವೆ", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ಚಿತ್ರಗಳನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡುವಲ್ಲಿ ದೋಷ: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "ಸರ್ವರ್‌ಗೆ ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "ಅವಧಿ ಮೀರಿದ ರುಜುವಾತುಗಳಿಂದಾಗಿ ಚಿತ್ರಗಳನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲು ವಿಫಲವಾಗಿದೆ. ದಯವಿಟ್ಟು Signal Desktop ನಿಂದ ಮತ್ತೊಮ್ಮೆ ವೆಬ್‌ಸೈಟ್ ಮರುತೆರೆಯಿರಿ.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "ಲಿಂಕ್ ಅನ್ನು ನಕಲಿಸಲಾಗಿದೆ", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ಲೈಟ್ ಥೀಮ್‌ನಲ್ಲಿ ನನ್ನ ಸ್ಟಿಕ್ಕರ್", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ಡಾರ್ಕ್ ಥೀಮ್‌ನಲ್ಲಿ ನನ್ನ ಸ್ಟಿಕ್ಕರ್", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "ಸ್ಟಿಕ್ಕರ್ ಪ್ಯಾಕ್ ಕ್ರಿಯೇಟರ್ ಬಳಸಲು ನಿಮ್ಮ ಫೋನ್ ಮತ್ತು ಡೆಸ್ಕ್‌ಟಾಪ್‌ನಲ್ಲಿ ದಯವಿಟ್ಟು Signal ಸೆಟಪ್ ಮಾಡಿ", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ಎಮೋಜಿ", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಿ", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ಎಮೋಜಿ ಉಪನಾಮ", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ko/messages.json b/sticker-creator/src/assets/locales/ko/messages.json new file mode 100644 index 000000000..c4c08444e --- /dev/null +++ b/sticker-creator/src/assets/locales/ko/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "스티커 아트 생성기" + }, + "index--create-sticker-pack" : { + "message" : "새 스티커 팩 만들기" + }, + "SignIn--title" : { + "message" : "스티커 팩 만들기", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal의 다른 모든 것들과 마찬가지로 스티커도 암호화됩니다. 이 도구를 사용하여 나만의 맞춤 스티커 팩을 만들어보세요.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "로그인 코드", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Signal 데스크톱 열어서 시작", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "죄송하지만 지원되지 않는 브라우저입니다. Firefox나 Chrome에서 이 링크를 열어주세요.", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "취소" + }, + "minutesAgo" : { + "message" : "$minutes$분", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "이모지 검색 결과 없음", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "이모지 검색", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "피부 톤: $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "웃는 얼굴과 사람", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "동물과 자연", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "음식과 음료", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "여행과 장소", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "활동", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "물체", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "부호", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "깃발", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal 아트 생성기", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal 스티커 팩 생성기", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal 로고", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "스티커 팩 생성기 안내", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "클릭하여 이미지를 추가하거나 여기에 드롭하세요.", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "여기에 이미지 드롭", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "스티커 팩", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "스티커 팩", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "취소", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "복사", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "다음", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "뒤로", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "스티커 추가", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "이미지 제거", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "파일을 클릭하거나 끌어와 스티커를 추가합니다.", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "스티커는 512x512 픽셀의 투명한 배경을 가진 PNG, APNG, WebP 형식이어야 합니다. 권장 여백은 16px입니다.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "여백 보기", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "각 스티커에 이모지 추가", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "이 기능을 사용하면 메시지를 보낼 때 스티커를 추천받을 수 있습니다.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "몇 가지 추가 세부 사항...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "제목", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "스티커 팩에 이름 붙이기", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "저자", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "스티커를 제출할 때 사용할 이름을 입력하세요.", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "커버 사진", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "스티커 팩을 공유할 때 표시되는 이미지입니다.", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "스티커 팩을 업로드할까요?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "업로드", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "스티커 팩을 만든 후에는 더 이상 편집하거나 삭제할 수 없습니다.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "스티커 팩 만들기", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$/$total$개 업로드함", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "축하드립니다! 스티커 팩을 만들었습니다.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "스티커 아이콘을 통해 새 스티커에 액세스하거나 아래 링크를 사용하여 친구와 공유하세요.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "$hashtag$ 해시태그를 사용하여 누구나 액세스할 수 있었으면 하는 맞춤 스티커 팩의 URL을 다른 사람들이 찾을 수 있도록 도와주세요.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "스티커 팩 URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "설치", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "다른 스티커 팩 만들기", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "내가 만든 새 Signal 스티커 팩을 구경하세요. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {이미지 {count,number}개를 추가함}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "애니메이션 아트는 현재 지원되지 않습니다.", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "드롭한 이미지가 너무 큽니다.", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "이미지 처리 오류", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "애니메이션 PNG 이미지는 정사각형이어야 합니다.", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "애니메이션 이미지는 계속 반복되어야 합니다.", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "애니메이션 PNG 이미지 크기가 너무 큽니다.", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "애니메이션 PNG 이미지 크기가 너무 작습니다.", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "이미지 업로드 오류: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "서버 연결 오류: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "만료된 자격 증명으로 인해 이미지를 업로드하지 못했습니다. Signal 데스크톱에서 웹사이트를 다시 열어주세요.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "링크를 복사했습니다.", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "밝은 테마의 내 스티커", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "어두운 테마의 내 스티커", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "스티커 팩 생성기를 사용하려면 휴대전화와 데스크톱에서 Signal을 설정하세요.", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "이모지", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "반응 사용자 지정", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "이모지 별칭", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ky-KG/messages.json b/sticker-creator/src/assets/locales/ky-KG/messages.json new file mode 100644 index 000000000..1dd6e7de3 --- /dev/null +++ b/sticker-creator/src/assets/locales/ky-KG/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Стикерлер түзгүчү" + }, + "index--create-sticker-pack" : { + "message" : "Жаңы стикерлер топтомун түзүү" + }, + "SignIn--title" : { + "message" : "Стикерлер топтомун түзүү", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal'дагы башка нерселер сыяктуу стикерлер да шифрленет. Ушул курал аркылуу өзүңүздүн стикерлериңиздин топтомдорун түзсөңүз болот.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Кирүү коду", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Баштоо үчүн Signal'ды компьютериңизде ачыңыз", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Кечиресиз, сиздин серепчиңизде иштебейт экен. Firefox же Chrome серепчисинде ачып көрүңүз", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Токтотуу" + }, + "minutesAgo" : { + "message" : "$minutes$м", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Быйтыкчалар табылган жок", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Быйтыкчаларды издөө", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Теринин өңү $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Быйтыкчалар жана адамдар", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Жаныбарлар жана жаратылыш", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Тамак-аш жана суусундук", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Саякаттоо жана жерлер", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Аракеттер", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Объекттер", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Символдор", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Желектер", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal өнөрканасы", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal стикерлер топтомун түзгүчү", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal логотиби", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Signal стикерлер топтомун түзүү нускамасы", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Бул жерди басып сүрөт кошуңуз же сүйрөп келиңиз", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Сүрөттөрдү бул жерге сүйрөп келиңиз", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Стикерлер топтому", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Стикерлер топтому", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Токтотуу", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Көчүрүү", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Кийинки", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Артка", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Стикерлериңизди кошуңуз", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Сүрөттү өчүрүү", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Стикер кошуу үчүн файлды басыңыз же сүйрөңүз", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Стикерлер тунук фондо, PNG, APNG же WebP форматында, 512 x 512 пиксель өлчөмүндө болушу керек. Сунушталган чек - 16 пиксель.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Четтерин көрүү", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Ар бир стикерге быйтыкча кошуу", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Бирөөлөр менен маектешип жатканыңызда стикерлерди сунуштап турабыз.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Дагы бир аз калды...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Аталышы", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Стикерлер топтомуңуздун аталышы кандай", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Стикерлерди ким тапшырып жатат", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Мукаба сүрөтү", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Стикерлер топтомуңузду бөлүшүп жатканда ушул сүрөт көрүнөт", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Стикерлер топтомуңузду чын эле жүктөп бересизби?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Жүктөп берүү", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Стикерлер топтомун түзгөндөн кийин аларды оңдоп же өчүрө албай каласыз.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Стикерлер топтому түзүлүүдө", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ ичинен $count$ жүктөлдү", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Куттуктайбыз! Стикерлер топтомун түздүңүз.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Жаңы стикерлериңизди стикер сүрөтчөсү аркылуу табасыз же досторуңуз менен төмөнкү шилтеме аркылуу бөлүшсөңүз болот.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Жалпыга ачык жарыялаган жеке стикерлер топтомуңуздун шилтемелерин башкалар оңой таба алышы үчүн хештегди $hashtag$ колдонуңуз.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Стикерлер топтомуна шилтеме", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Орнотуу", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Башка стикерлер топтомун түзүү", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal үчүн түзгөн бул жаңы стикерлер топтомумду карап көрүңүз. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} сүрөт кошулду}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Азырынча анимацияланган сүрөттөр колдонулбайт", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Өтө чоң сүрөттү сүйрөп келдиңиз", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Сүрөттү иштетүүдө ката кетти", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимацияланган PNG сүрөттөрү чарчы формада болушу керек", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимацияланган сүрөттөр тынымсыз кыймылдап турушу керек", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Анимацияланган PNG сүрөтүнүн өлчөмдөрү өтө чоң", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Анимацияланган PNG сүрөтүнүн өлчөмдөрү өтө кичине", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Сүрөттөрдү жүктөөдө ката кетти: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Серверге туташпай жатат: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Аккаунтка киргизүүчү маалымат эскирип калгандыктан, сүрөттөр жүктөлгөн жок. Signal сайтын компьютерден дагы бир жолу ачып көрүңүз.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Шилтеме көчүрүлдү", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Менин стикерим ачык темада", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Менин стикерим күңүрт темада", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Стикерлер топтомунун түзгүчүн колдонуу үчүн телефонуңузга жана компьютериңизге Signal'ды коюп алыңыз", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Быйтыкча", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Сезимди билдирүү параметрлери", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Быйтыкчанын аталышы", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/lt-LT/messages.json b/sticker-creator/src/assets/locales/lt-LT/messages.json new file mode 100644 index 000000000..a5fc2c96e --- /dev/null +++ b/sticker-creator/src/assets/locales/lt-LT/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Lipdukų kūrimo įrankis" + }, + "index--create-sticker-pack" : { + "message" : "Sukurti naują lipdukų paketą" + }, + "SignIn--title" : { + "message" : "Sukurk lipdukų paketą", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Kaip ir viskas programėlėje „Signal“, lipdukai taip pat užšifruoti. Naudok šį įrankį savo lipdukų paketams kurti.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Prisijungimo kodas", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Atidaryk „Signal Desktop“ ir pradėk", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Atsiprašome, tavo naršyklė nepalaikoma. Atidaryk šią nuorodą per „Firefox“ arba „Chrome“", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Atšaukti" + }, + "minutesAgo" : { + "message" : "$minutes$ min.", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Jaustukų nerasta", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Ieškoti jaustukų", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Odos atspalvis $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Šypsenėlės ir žmonės", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Gyvūnai ir gamta", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Maistas ir gėrimai", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Kelionės ir vietos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Veiklos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objektai", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboliai", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Vėliavos", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "„Signal“ paveikslėlių kūrimo įrankis", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "„Signal“ lipdukų paketo kūrimas", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "„Signal“ logotipas", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Lipdukų paketo kūrimo gairės", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Spustelėk ir pridėk arba įmesk paveikslėlius čia", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Įmesk paveikslėlius čia", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Lipdukų paketas", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Lipdukų paketas", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Atšaukti", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopijuoti", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Toliau", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Atgal", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Pridėk savo lipdukus", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Pašalinti paveikslėlį", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Jei nori pridėti lipduką, spustelėk arba įmesk failą", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Lipdukai turi būti PNG, APNG ar WebP formato su permatomu fonu ir 512x512 pikselių dydžio. Rekomenduojama paraštė yra 16 pikselių.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Žiūrėti paraštes", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Pridėk jaustuką prie kiekvieno lipduko", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Tai leis mums siūlyti lipdukus tau rašant žinutę.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Dar šiek tiek informacijos…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Pavadinimas", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Suteik pavadinimą savo lipdukų paketui", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autorius", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Įvesk vardą, kuris bus nurodytas prie tavo lipdukų", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Viršelio paveikslėlis", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Šis paveikslėlis bus rodomas tau bendrinant savo lipdukų paketą", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Ar tikrai nori įkelti savo lipdukų paketą?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Įkelti", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Po to, kai sukursi lipdukų paketą, nebegalėsi atlikti korekcijų ar ištrinti.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Kuriamas tavo lipdukų paketas", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Įkelta $count$ iš $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Sveikiname! Tu sukūrei lipdukų paketą.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Pasiek savo naujus lipdukus per lipduko piktogramą arba bendrink su draugais per nuorodą apačioje.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Naudok grotažymę $hashtag$, kad kitiems būtų lengviau rasti lipdukų paketų, kuriuos norėtum padaryti visiems pasiekiamus, URL adresus.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Lipdukų paketo URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Įdiegti", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Sukurti dar vieną lipdukų paketą", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Pažiūrėk, kokį naują lipdukų paketą sukūriau „Signal“. #privatumas #lipdukai", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Pridėtas 1 paveikslėlis} few {Pridėti {count,number} paveikslėliai} many {Pridėta {count,number} pav.} other {Pridėta {count,number} paveikslėlių}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animuoti vaizdai šiuo metu nepalaikomi", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Įmestas paveikslėlis per didelis", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Klaida apdorojant paveikslėlį", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animuoti PNG paveikslėliai turi būti kvadratiniai", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animuoti paveikslėliai turi cikliškai kartotis", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animuoto PNG paveikslėlio matmenys per dideli", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animuoto PNG paveikslėlio matmenys per maži", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Klaida įkeliant paveikslėlius: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nepavyksta prisijungti prie serverio: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nepavyko įkelti paveikslėlių dėl pasibaigusių įgaliojimų. Atidaryk svetainę per „Signal Desktop“ iš naujo.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Nuoroda nukopijuota", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mano lipdukas šviesiame apipavidalinime", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mano lipdukas tamsiame apipavidalinime", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Jei nori naudoti lipdukų paketo kūrimo įrankį, įdiek „Signal“ telefone ir kompiuteryje", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Jaustukai", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Tinkinti reakcijas", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Jaustuko slapyvardis", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/lv-LV/messages.json b/sticker-creator/src/assets/locales/lv-LV/messages.json new file mode 100644 index 000000000..fe3f72164 --- /dev/null +++ b/sticker-creator/src/assets/locales/lv-LV/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Uzlīmju mākslas izveides programma" + }, + "index--create-sticker-pack" : { + "message" : "Izveidot jaunu uzlīmju komplektu" + }, + "SignIn--title" : { + "message" : "Izveidot uzlīmju komplektu", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Tāpat kā viss cits vietnē Signal, arī uzlīmes ir šifrētas. Izmantojiet šo rīku, lai izveidotu savus pielāgotus uzlīmju komplektus.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Pieteikšanās kods", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Atveriet Signal Desktop versiju, lai sāktu", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Diemžēl jūsu pārlūks netiek atbalstīts. Atveriet šo saiti Firefox vai Chrome pārlūkā", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Atcelt" + }, + "minutesAgo" : { + "message" : "$minutes$min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Neviena emocijzīme netika atrasta", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Meklēt emocijzīmes", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Apdares tonis $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smaidiņi; Cilvēki", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Dzīvnieki un Daba", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Ēdieni un dzērieni", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Ceļojumi un vietas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivitātes", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Karogi", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal mākslas izveides programma", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal uzlīmju komplekta izveides programma", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal logotips", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Uzlīmju komplekta izveides programmas vadlīnijas", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Noklikšķiniet, lai šeit pievienotu vai nomestu attēlus", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Nomest attēlus šeit", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Uzlīmju komplekts", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Uzlīmju komplekts", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Atcelt", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopēt", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Tālāk", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Atpakaļ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Pievienot uzlīmes", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Noņemt attēlu", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Noklikšķiniet vai velciet/nometiet failu, lai pievienotu uzlīmi", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Uzlīmēm jābūt PNG, APNG vai WebP formātā ar caurspīdīgu fonu un 512x512 pikseļiem. Ieteicamā piemale ir 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Skatīt piemales", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Pievienot emocijzīmi katrai uzlīmei", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Tādējādi ziņapmaiņas laikā mēs varam ieteikt uzlīmes.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Vēl tikai dažas lietas…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Virsraksts", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Nosauciet savu uzlīmju komplektu", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autors", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Apakšā ievadiet vārdu, lai iesniegtu savas uzlīmes", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Titulattēls", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Šis ir attēls, kas tiks parādīts, kopīgojot uzlīmes", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Vai tiešām vēlaties augšupielādēt savu uzlīmju komplektu?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Augšupielādēt", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Pēc uzlīmju komplekta izveides vairs nevarēs veikt labojumus vai dzēst.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Uzlīmju komplekta izveide", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Augšupielādēti $count$ no $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Apsveicam! Jūs izveidojāt uzlīmju komplektu.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Piekļūstiet savām jaunajām uzlīmēm, izmantojot uzlīmju ikonu, vai kopīgojiet uzlīmes ar draugiem, izmantojot zemāk esošo saiti.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Izmantojiet atsauces birku $hashtag$, lai palīdzētu citiem cilvēkiem atrast URL visiem pielāgotajiem uzlīmju komplektiem, kurus vēlaties padarīt publiski pieejamus.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Uzlīmju komplekta URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalēt", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Izveidot citu uzlīmju komplektu", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Apskatiet šo jauno Signal paredzēto uzlīmju komplektu, ko es izveidoju. #izveideprivātiuzlīme", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, zero {Pievienoti {count,number} attēli} one {Pievienots 1 attēls} other {Pievienoti {count,number} attēli}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animēta māksla šobrīd netiek atbalstīta", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Nomestais attēls ir pārāk liels", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Attēla apstrādes kļūda", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animētiem PNG attēliem jābūt kvadrāta formā", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animētiem attēliem cikliski jāatkārtojas", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animēta PNG attēla izmēri ir pārāk lieli", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animēta PNG attēla izmēri ir pārāk mazi", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Augšupielādējot attēlu, radās kļūda:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Neizdevās pieslēgties serverim: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Neizdevās augšupielādēt attēlus, jo beidzās akreditācijas datu derīguma termiņš. Lūdzu, vēlreiz atveriet vietni no Signal Desktop versijas.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Saite nokopēta", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mana uzlīme gaišajā dizainā", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mana uzlīme tumšajā dizainā", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Lai izmantotu uzlīmju komplekta veidotāju, iestatiet Signal savā tālrunī un datorā", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emocijzīme", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Pielāgot emociju izpausmes", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emocijzīmes aizstājvārds", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/mk-MK/messages.json b/sticker-creator/src/assets/locales/mk-MK/messages.json new file mode 100644 index 000000000..67949f3ea --- /dev/null +++ b/sticker-creator/src/assets/locales/mk-MK/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Креатор на налепници" + }, + "index--create-sticker-pack" : { + "message" : "Создајте нов пакет налепници" + }, + "SignIn--title" : { + "message" : "Создајте пакет налепници", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Како и сè друго на Signal, налепниците се исто така шифрирани. Употребете ја оваа алатка за да создадете ваши персонализирани пакет налепници.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Код за најава", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Отворете го Signal за Desktop за да започнете", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "За жал, вашиот веб-прелистувач не е поддржан. Ве молиме отворете го овој линк во Firefox или Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Откажи" + }, + "minutesAgo" : { + "message" : "$minutes$мин.", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Не е пронајден ниеден емотикон", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Пребарај емотикони", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Боја на кожа $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Смешко-емотикони и луѓе", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Животни и природа", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Храна и пијалаци", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Патување и места", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Активности", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Предмети", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Симболи", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Знамиња", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Креатор на слики на Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Креатор на пакет налепници на Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal лого", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Упатства за креаторот на пакет налепници", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Кликнете за да ги додадете или испуштите сликите тука", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Испуштете ги сликите тука", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Пакет налепници", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Пакет налепници", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Откажи", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Копирај", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Следно", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Назад", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Додајте ги вашите налепници", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Отстранете ја сликата", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Кликнете или повлечете/испуштете ја датотеката за да додадете налепница", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Налепниците мора да се во PNG, APNG или WebP формат со провидна позадина и 512x512 пиксели. Препорачаната маргина е 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Прикажи маргини", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Додајте емотикон на секоја налепница", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Ова ни овозможува да ви предлагаме налепници додека се допишувате.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Само уште неколку детали…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Наслов", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Именувајте го вашиот пакет налепници", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Внесете име под кое сакате да ги поднесете налепниците", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Насловна слика", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ова е сликата која што ќе се прикаже кога ќе го споделите пакетот налепници", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Дали сте сигурни дека сакате да го внесете вашиот пакет налепници?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Внеси", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Повеќе нема да можете да правите измени или да бришете откако ќе создадете пакет налепници.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Се создава вашиот пакет налепници", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ од $total$ се внесени", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Честитки! Создадовте пакет налепници.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Отворете ги новите налепници преку иконата налепница, или споделете ги со вашите пријатели со помош на линкот подолу.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Употребете го хаштагот $hashtag$ за да им помогнете на другите луѓе да ја најдат URL адресата на персонализираните пакети налепници кои би сакале да бидат достапни јавно.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL на пакет налепници", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Инсталирај", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Создајте друг пакет налепници", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Видете го новиов пакет налепници што го создадов за Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Додадена е 1 слика} other {Додадени се {count,number} слики}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Анимираните слики не се поддржани во моментов", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Испуштената слика е преголема", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Грешка при процесирање на сликата", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимираните слики во PNG формат треба да бидат квадратни", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимираните слики треба да имаат непрекинат циклус", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Димензиите на анимираните слики во PNG формат се преголеми", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Димензиите на анимираните слики во PNG формат се премали", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Грешка при внесување на сликите: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Не може да се поврзе со серверот: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Внесувањето на сликите не беше успешно поради истечени креденцијали. Ве молиме одново отворете ја веб-локацијата преку Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Линкот е копиран", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Мојата налепница во светла тема", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Мојата налепница во темна тема", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Ве молиме поставете го Signal на вашиот телефон и десктоп компјутер за да го користите креаторот на пакет налепници", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Емотикон", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Прилагоди реакции", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Алиас за емотикон", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ml-IN/messages.json b/sticker-creator/src/assets/locales/ml-IN/messages.json new file mode 100644 index 000000000..7e8e91d34 --- /dev/null +++ b/sticker-creator/src/assets/locales/ml-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "സ്റ്റിക്കർ ആർട്ട് ക്രിയേറ്റർ" + }, + "index--create-sticker-pack" : { + "message" : "പുതിയ സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിക്കുക" + }, + "SignIn--title" : { + "message" : "ഒരു സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിക്കൂ", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal-ൽ ലഭ്യമായ മറ്റ് ഫീച്ചറുകൾ പോലെ തന്നെ സ്റ്റിക്കറുകളും എൻക്രിപ്റ്റ് ചെയ്തിട്ടുണ്ട്. നിങ്ങളുടെ ഇഷ്ടാനുസൃത സ്റ്റിക്കറ്റർ പായ്ക്കുകൾ സൃഷ്ടിക്കാൻ ഈ ടൂൾ ഉപയോഗിക്കുക.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "സൈൻ ഇൻ ചെയ്യൽ കോഡ്", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "തുടങ്ങാനായി Signal ഡെസ്‌ക്ടോപ്പ് തുറക്കുക", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ക്ഷമിക്കണം, നിങ്ങളുടെ ബ്രൗസറിന് പിന്തുണയില്ല. ഈ ലിങ്ക് Firefox-ലോ Chrome-ലോ തുറക്കുക", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "റദ്ദാക്കുക" + }, + "minutesAgo" : { + "message" : "$minutes$മി", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ഇമോജിയൊന്നും കണ്ടെത്താനായില്ല", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ഇമോജി തിരയുക", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "ചർമ്മത്തിന്റെ നിറം $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "സ്മൈലികളും ആളുകളും", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "മൃഗങ്ങളും പ്രകൃതിയും", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "ഭക്ഷണവും പാനീയവും", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "യാത്രയും സ്ഥലങ്ങളും", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "പ്രവർത്തനങ്ങൾ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "വസ്തുക്കൾ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "ചിഹ്നങ്ങൾ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "പതാകകൾ", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal ആർട്ട് ക്രിയേറ്റർ", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal സ്റ്റിക്കർ പായ്ക്ക് ക്രിയേറ്റർ", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal ലോഗോ", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക് ക്രിയേറ്റർ മാർഗ്ഗനിർദ്ദേശങ്ങൾ", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ഇവിടെ ചിത്രങ്ങൾ ചേർക്കാനോ ഡ്രോപ്പ് ചെയ്യാനോ ക്ലിക്ക് ചെയ്യുക", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ചിത്രങ്ങൾ ഇവിടെ ഡ്രോപ്പ് ചെയുക", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക്", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക്", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "റദ്ദാക്കുക", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "കോപ്പി ചെയ്യുക", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "അടുത്തത്", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "തിരികെ പോകുക", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "നിങ്ങളുടെ സ്റ്റിക്കറുകൾ ചേർക്കുക", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ചിത്രം നീക്കം ചെയ്യുക", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "സ്റ്റിക്കർ ചേർക്കാൻ ഒരു ഫയലിൽ ക്ലിക്ക് ചെയ്യുക അല്ലെങ്കിൽ അത് വലിച്ചിടുക", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "സുതാര്യമായ പശ്ചാത്തലവും 512x512 പിക്സലുകളും ഉള്ള PNG, APNG, WebP ഫോർമാറ്റുകളിലായിരിക്കണം സ്റ്റിക്കറുകൾ. ശുപാർശ ചെയ്യുന്ന മാർജിൻ 16px ആണ്.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "മാർജിനുകൾ കാണുക", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ഓരോ സ്റ്റിക്കറിലും ഒരു ഇമോജി ചേർക്കുക", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "നിങ്ങൾ സന്ദേശങ്ങൾ അയയ്ക്കുമ്പോൾ സ്റ്റിക്കറുകൾ നിർദ്ദേശിക്കാൻ ഇത് ഞങ്ങളെ അനുവദിക്കുന്നു.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "കുറച്ച് വിശദാംശങ്ങൾ കൂടി മാത്രം...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "പേര്", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "നിങ്ങളുടെ സ്റ്റിക്കർ പായ്ക്കിന്‍റെ പേര്", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "സൃഷ്ടാവ്", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "നിങ്ങളുടെ സ്റ്റിക്കറുകൾ ആര് സൃഷ്ടിച്ചതായി അറിയപ്പെടണോ അവരുടെ പേര് നൽകുക", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "കവർ ചിത്രം", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "നിങ്ങളുടെ സ്റ്റിക്കർ പായ്ക്ക് പങ്കിടുമ്പോൾ കാണിക്കുന്ന ചിത്രമാണിത്", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "നിങ്ങളുടെ സ്റ്റിക്കർ പായ്ക്ക് അപ്‌ലോഡ് ചെയ്യണമെന്ന് ഉറപ്പാണോ?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "അപ്‌ലോഡ്", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിച്ചതിന് ശേഷം നിങ്ങൾക്ക് ഇനി എഡിറ്റുകൾ വരുത്താനോ ഇല്ലാതാക്കാനോ കഴിയില്ല.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "നിങ്ങളുടെ സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിക്കുന്നു", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$-ൽ $count$ അപ്‌ലോഡ് ചെയ്തു", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "അഭിനന്ദനങ്ങൾ! നിങ്ങൾ ഒരു സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിച്ചു.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "സ്റ്റിക്കർ ഐക്കണിലൂടെ നിങ്ങളുടെ പുതിയ സ്റ്റിക്കറുകൾ ആക്സസ് ചെയ്യുക, അല്ലെങ്കിൽ താഴെയുള്ള ലിങ്ക് ഉപയോഗിച്ച് നിങ്ങളുടെ സുഹൃത്തുക്കളുമായി പങ്കിടുക.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "നിങ്ങൾ പൊതുവായി ആക്സസ് ചെയ്യാൻ ആഗ്രഹിക്കുന്ന ഏതെങ്കിലും ഇഷ്ടാനുസൃത സ്റ്റിക്കർ പായ്ക്കുകൾക്കായി യുആർഎല്ലുകൾ കണ്ടെത്താൻ മറ്റ് ആളുകളെ സഹായിക്കുന്നതിന് $hashtag$ എന്ന ഹാഷ് ടാഗ് ഉപയോഗിക്കുക.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക് URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ഇൻസ്റ്റാൾ", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "മറ്റൊരു സ്റ്റിക്കർ പായ്ക്ക് സൃഷ്ടിക്കുക", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal-നായി സൃഷ്ടിച്ച ഈ പുതിയ സ്റ്റിക്കർ പായ്ക്ക് I പരിശോധിക്കുക. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 ചിത്രം ചേർത്തു} other {{count,number} ചിത്രങ്ങൾ ചേർത്തു}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ആനിമേറ്റ് ചെയ്‌ത ആർട്ടിന് നിലവിൽ പിന്തുണയില്ല", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ഡ്രോപ്പ് ചെയ്ത ചിത്രം വളരെ വലുതാണ്", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ചിത്രം പ്രോസസ്സ് ചെയ്യുന്നതിൽ പിശക്", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "ആനിമേറ്റ് ചെയ്‌ത PNG ചിത്രങ്ങൾ ചതുരത്തിലായിരിക്കണം", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "ആനിമേറ്റ് ചെയ്ത ചിത്രങ്ങൾ തുടർച്ചയായി ലൂപ്പിലായിരിക്കണം", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ആനിമേറ്റ് ചെയ്‌ത PNG ചിത്രത്തിന്‍റെ ഡൈമെൻഷനുകൾ വളരെ വലുതാണ്", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ആനിമേറ്റ് ചെയ്‌ത PNG ചിത്രത്തിന്‍റെ ഡൈമെൻഷനുകൾ വളരെ ചെറുതാണ്", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ചിത്രങ്ങൾ അപ്‌ലോഡ് ചെയ്യുന്നതിൽ പിശക്: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "സെർവറിലേക്ക് കണക്റ്റ് ചെയ്യാനായില്ല: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "കാലഹരണപ്പെട്ട ക്രെഡെൻഷ്യലുകൾ കാരണം ചിത്രങ്ങൾ അപ്‍ലോഡ് ചെയ്യാനായില്ല. Signal ഡെസ്‌ക്ടോപ്പിൽ നിന്ന് വെബ്സൈറ്റ് വീണ്ടും തുറക്കുക.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "ലിങ്ക് പകർത്തി", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ലൈറ്റ് തീമിൽ എന്‍റെ സ്റ്റിക്കർ", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ഇരുണ്ട തീമിൽ എന്റെ സ്റ്റിക്കർ", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "സ്റ്റിക്കർ പായ്ക്ക് ക്രിയേറ്റർ ഉപയോഗിക്കുന്നതിന് നിങ്ങളുടെ ഫോണിലും ഡെസ്ക്ടോപ്പിലും Signal സജ്ജീകരിക്കുക", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ഇമോജി", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "പ്രതികരണങ്ങൾ ഇഷ്ടാനുസൃതമാക്കുക", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ഇമോജിയുടെ മറ്റൊരു പേര്", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/mr-IN/messages.json b/sticker-creator/src/assets/locales/mr-IN/messages.json new file mode 100644 index 000000000..63c010b09 --- /dev/null +++ b/sticker-creator/src/assets/locales/mr-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "स्टिकर आर्ट निर्माता" + }, + "index--create-sticker-pack" : { + "message" : "नवीन स्टिकर पॅक तयार करा" + }, + "SignIn--title" : { + "message" : "स्टिकर पॅक तयार करा", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "जसे Signal मध्ये सर्वकाही असते त्याप्रमाणेच, स्टिकर हे देखील कूटबद्ध केलेले असतील. या साधनाचा वापर आपले स्वतःचे सानुकूलित स्टिकर पॅक्स तयार करण्यासाठी करा.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "साइन इन कोड", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "सुरुवात करण्यासाठी Signal Desktop उघडा", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "क्षमस्व, आपला ब्राउझर समर्थित नाही. कृपया ही लिंक Firefox किंवा Chrome मध्ये उघडा", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "रद्द करा" + }, + "minutesAgo" : { + "message" : "$minutes$मि", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "कुठलेही इमोजी आढळले नाही", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "इमोजी शोधा", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "स्किन टोन $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "स्मायली आणि व्यक्ती", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "प्राणी आणि निसर्ग", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "खाद्य आणि पेय", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "प्रवास आणि जागा", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "गतिविधी", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "वस्तू", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "चिन्ह", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "झेंडे", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal आर्ट निर्माता", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal स्टिकर पॅक निर्माता", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal लोगो", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Signal स्टिकर पॅक निर्माता मार्गदर्शक तत्त्वे", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "चित्र जोडण्यासाठी किंवा ड्रॉप करण्यासाठी येथे क्लिक करा", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "चित्रे येथे ड्रॉप करा", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "स्टिकर पॅक", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "स्टिकर पॅक", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "रद्द करा", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "कॉपी करा", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "पुढे", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "मागे", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "आपले स्टिकर्स जोडा", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "चित्र काढून टाका", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "स्टिकर जोडण्यासाठी फाइल क्लिक किंवा ड्रॅग/ड्रॉप करा", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "स्टिकर्स हे पारदर्शक पार्श्वभूमी आणि 512x512 पिक्सेल असलेले PNG, APNG, किंवा WebP स्वरूपनामध्ये असायला हवे. सुचविलेले मार्जिन 16px आहे.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "मार्जिन पहा", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "प्रत्येक स्टिकरसाठी एक इमोजी जोडा", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "यामुळे आम्हाला आपण संदेश करताना आपल्यासाठी स्टिकर सुचविण्यात मदत मिळेल.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "फक्त आणखी काही तपशील...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "शीर्षक", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "आपल्या स्टिकर पॅकला नाव द्या", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "लेखक", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "खाली आपले स्टिकर्स सबमिट करण्यासाठी नाव प्रविष्ट करा", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "कव्हर चित्र", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "आपण आपले स्टिकर पॅक सामायिक करतांना हे चित्र दर्शविले जाईल", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "आपण खात्रीने स्टिकर पॅक अपलोड करू इच्छिता?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "अपलोड करा", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "स्टिकर पॅक तयार केल्यानंतर आपल्याला यापुढे संपादन करता किंवा हटवता येणार नाही.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "आपला स्टिकर पॅक तयार करत आहे", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ मधून $count$ अपलोड केले गेले", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "अभिनंदन! आपण एक स्टिकर पॅक तयार केले.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "स्टिकर चिन्हाद्वारे आपले नवीन स्टिकर्स अ‍ॅक्सेस करा, किंवा खालील लिंक वापरून आपल्या मित्रांसह सामायिक करा.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "आपण सार्वजनिकरीत्या ॲक्सेस करण्यायोग्य बनवू इच्छिता असे कुठलेही सानुकूल स्टिकर पॅकचे URLS शोधण्यात लोकांची मदत करण्यासाठी हॅशटॅग $hashtag$ वापरा.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "स्टिकर पॅक URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "स्थापना करा", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "आणखी एक स्टिकर पॅक तयार करा", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal साठी मी तयार केलेला हा नवीन स्टिकर पॅक पहा. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 प्रतिमा जोडली} other {{count,number} प्रतिमा जोडल्या}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "अ‍ॅनिमेट केलेले आर्ट सध्या समर्थित नाही", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ड्रॉप केलेले चित्र खूप मोठे आहे", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "चित्रावर प्रक्रिया करण्यात त्रुटी", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "अ‍ॅनिमेटेड PNG चित्र चौकोनी असणे आवश्यक आहे", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "अ‍ॅनिमेटेड चित्र कायमस्वरूपी लूप केलेली असावीत", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "अ‍ॅनिमेटेड PNG चित्राची मोजमापे अतिशय मोठी आहेत", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "अ‍ॅनिमेटेड PNG चित्राची मोजमापे अतिशय लहान आहे", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "चित्र अपलोड करताना त्रुटी: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "सर्व्हरशी कनेक्ट करु शकत नाही: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "कालबाह्य क्रडेन्शियल्समुळे चित्र अपलोड करण्यात अपयशी. कृपया Signak Desktop वरून वेबसाईट पुन्हा उघडा.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "लिंक कॉपी केली", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "लाइट थीम मध्ये माझे स्टिकर", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "गडद थीम मध्ये माझे स्टिकर", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "स्टिकर पॅक उत्पादक वापरण्यासाठी कृपया आपल्या फोन आणि डेस्कटॉपवर Signal सेट अप करा", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "इमोजी", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "प्रतिक्रिया सानुकूलित करा", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "इमोजी उपनाम", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ms/messages.json b/sticker-creator/src/assets/locales/ms/messages.json new file mode 100644 index 000000000..e2f4750d0 --- /dev/null +++ b/sticker-creator/src/assets/locales/ms/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Pencipta Seni Pelekat" + }, + "index--create-sticker-pack" : { + "message" : "Cipta pek pelekat baru" + }, + "SignIn--title" : { + "message" : "Cipta Pek Pelekat", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Sama seperti semua yang lain dalam Signal, pelekat juga disulitkan. Guna alat ini untuk membuat pek pelekat tersuai anda sendiri.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kod Log Masuk", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Buka Desktop Signal untuk Mula", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Maaf, pelayar anda tidak disokong. Sila buka pautan ini dalam Firefox atau Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Batal" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Tiada emoji dijumpai", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Cari Emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Warna kulit $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smiley & Orang", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Haiwan & Alam Semula Jadi", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Makanan & Minuman", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Perjalanan & Tempat", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktiviti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objek", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simbol", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bendera", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Pencipta Seni Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Pencipta Pek Pelekat Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Garis Panduan Pek Pencipta Pelekat", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klik untuk menambah atau meletakkan gambar di sini", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Letakkan imej di sini", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pek pelekat", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pek pelekat", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Batal", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Salin", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Seterusnya", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Kembali", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Tambah pelekat anda", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Alih keluar imej", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klik atau seret/letakkan fail untuk menambah pelekat", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Pelekat mesti dalam format PNG, APNG, atau WebP dengan latar belakang yang lut sinar dan piksel 512x512. Margin yang disyorkan ialah 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Lihat margin", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Tambah emoji kepada setiap pelekat", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Ini membolehkan kami mencadangkan pelekat kepada anda semasa anda menghantar mesej.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Hanya beberapa butiran lagi...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Tajuk", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Namakan pek pelekat anda", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Pengarang", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Masukkan nama pencipta pelekat ini", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imej kulit depan", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ini imej yang akan muncul apabila anda kongsikan pek pelekat anda", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Adakah anda pasti mahu memuat naik pek pelekat anda?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Muat naik", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Anda tidak lagi dapat membuat pengeditan atau pemadaman setelah mencipta pek pelekat.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Mencipta pek pelekat anda", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ daripada $total$ telah dimuat naik", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Tahniah! Anda telah mencipta pek pelekat.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Akses pelekat baru anda melalui ikon pelekat, atau kongsikan dengan rakan anda menggunakan pautan di bawah.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Gunakan tanda pagar $hashtag$ untuk membantu orang lain mencari URL untuk mana-mana pek pelekat tersuai yang anda benarkan untuk diakses secara terbuka.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL Pek Pelekat", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Memasang", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Cipta pek pelekat yang lain", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Lihat pek pelekat baru yang saya cipta untuk Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} imej telah ditambah}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Seni animasi tidak disokong pada masa ini", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Imej yang diletakkan terlalu besar", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Ralat semasa memproses imej", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Imej animasi PNG mestilah berbentuk segi empat sama", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Imej animasi mesti sentiasa berulang", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensi imej animasi PNG terlalu besar", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensi imej animasi PNG terlalu kecil", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Ralat memuat naik imej: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Tidak dapat menyambung ke pelayan: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Gagal memuat naik imej kerana kelayakan tamat tempoh. Sila buka semula laman web Signal Desktop sekali lagi.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Pautan telah disalin", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Pelekat saya dalam tema terang", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Pelekat saya dalam tema gelap", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Sila sediakan Signal pada telefon dan desktop anda untuk menggunakan Pencipta Pek Pelekat", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Sesuaikan reaksi", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/my/messages.json b/sticker-creator/src/assets/locales/my/messages.json new file mode 100644 index 000000000..56a0edc91 --- /dev/null +++ b/sticker-creator/src/assets/locales/my/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Sticker Art Creator" + }, + "index--create-sticker-pack" : { + "message" : "စတစ်ကာတွဲအသစ် ဖန်တီးရန်" + }, + "SignIn--title" : { + "message" : "စတစ်ကာတွဲတစ်ခု ဖန်တီးရန်", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal ရှိ အခြားအရာအားလုံးကဲ့သို့ပင် စတစ်ကာများကိုလည်း ကုဒ်ပြောင်းဝှက်ထားပါသည်။ သင့်ကိုယ်ပိုင်စတစ်ကာတွဲများ ဖန်တီးရန် ဤတူးလ်ကို သုံးပါ။", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "ဝင်ရောက်ကုဒ်", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "စတင်လုပ်ဆောင်ရန်အတွက် Signal Desktop ကို ဖွင့်ရန်", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ဝမ်းနည်းပါသည်၊ သင့်ဘရောက်ဇာကို ပံ့ပိုးပေးခြင်း မရှိပါ။ ဤလင့်ခ်ကို Firefox သို့မဟုတ် Chrome တွင် ဖွင့်ကြည့်ပေးပါ", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "မလုပ်တော့ပါ" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "အီမိုဂျိ ရှာမတွေ့ပါ", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "အီမိုဂျိ ရှာရန်", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "အသားအရောင် $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "အပြုံးမျက်နှာများနှင့် လူများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "တိရိစ္ဆာန်များနှင့် သဘာဝအရာများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "အစားအသောက်", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "အသွားအလာနှင့် နေရာများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "လှုပ်ရှားမှုများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "အရာဝတ္ထုများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "သင်္ကေတများ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "အလံများ", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Art Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal Sticker Pack Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal လိုဂို", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Sticker Pack Creator လမ်းညွှန်များ", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ဤနေရာတွင် ရုပ်ပုံများကို ဆွဲယူထည့်ပါ သို့မဟုတ် ပေါင်းထည့်ရန် နှိပ်ပါ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ဤနေရာတွင် ရုပ်ပုံများ ဆွဲယူထည့်ရန်", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "စတစ်ကာတွဲ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "စတစ်ကာတွဲ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "မလုပ်တော့ပါ", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "ကူးရန်", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "ရှေ့သို့", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "နောက်သို့", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "သင့်စတစ်ကာများကို ပေါင်းထည့်ရန်", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ရုပ်ပုံကို ဖယ်ရှားရန်", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "စတစ်ကာတစ်ခုကို ပေါင်းထည့်ရန် ဖိုင်တစ်ဖိုင်ကို ဆွဲယူထည့်ပါ သို့မဟုတ် နှိပ်ပါ", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "စတစ်ကာများသည် PNG ၊ APNG သို့မဟုတ် WebP ဖောမတ်၊ နောက်ခံအကြည်နှင့် 512x512 Pixel ဖြင့် ရှိရပါမည်။ အကြံပြုထားသော မာဂျင်သည် 16px ဖြစ်ပါသည်။", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "မာဂျင်များ ကြည့်ရန်", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "စတစ်ကာတစ်ခုစီတိုင်းတွင် အီမိုဂျိတစ်ခုစီ ပေါင်းထည့်ရန်", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "ဤသည်က သင်မက်ဆေ့ချ်ရိုက်သည့်အခါ စတစ်ကာများ အကြံပြုပေးနိုင်စေပါသည်။", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "နောက်ထပ်အသေးစိတ် အနည်းငယ်...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ခေါင်းစဉ်", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "သင့်စတစ်ကာတွဲကို အမည်ပေးပါ", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "ဖန်တီးသူ", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "သင့်စတစ်ကာတွဲများအောက်တွင် ထည့်သွင်းရန် အမည်တစ်ခုကို ရိုက်ထည့်ပါ", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "ကာဗာပုံ", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "ဤသည်က သင့်စတစ်ကာတွဲကို ဝေမျှသည့်အခါ ပြသမည့် ရုပ်ပုံဖြစ်ပါသည်", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "သင့်စတစ်ကာတွဲကို အပ်လုဒ် လုပ်လိုသည်မှာ သေချာပါသလား။", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "အပ်လုဒ်လုပ်ရန်", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "စတစ်ကာတွဲတစ်ခုကို ဖန်တီးပြီးနောက် ပြင်ဆင်ခြင်း သို့မဟုတ် ဖျက်ခြင်း ပြုလုပ်နိုင်တော့မည် မဟုတ်ပါ။", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "သင့်စတစ်ကာတွဲကို ဖန်တီးနေဆဲ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ တွင် $count$ အပ်လုဒ်လုပ်ပြီး", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "ဂုဏ်ယူပါသည်၊ သင်သည် စတစ်ကာတွဲတစ်ခုကို ဖန်တီးပြီးပါပြီ။", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "စတစ်ကာ အိုင်ကွန်မှတစ်ဆင့် သင့်စတစ်ကာအသစ်များကို ဝင်ရောက် သုံးစွဲပါ သို့မဟုတ် အောက်ပါလင့်ခ်ကို သုံး၍ သင့်မိတ်ဆွေများနှင့် ဝေမျှပါ။", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "အများ ဝင်ရောက် သုံးစွဲစေလိုသော စိတ်ကြိုက်စတစ်ကာတွဲတိုင်းအတွက် URL များကို အခြားသူများ ရှာရာတွင် ကူညီပေးရန် Hashtag $hashtag$ ကို သုံးပါ။", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "စတစ်ကာတွဲ URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ထည့်သွင်းပါ", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "နောက်ထပ်စတစ်ကာတွဲကို ဖန်တီးရန်", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal အတွက် ကျွန်ုပ် ဖန်တီးထားသော ဤစတစ်ကာတွဲ အသစ်ကို ကြည့်လိုက်ပါ။ #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} ပုံ ပေါင်းထည့်ပြီး}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "သက်ဝင်လှုပ်ရှားသော အနုလက်ရာများကို လက်ရှိတွင် မပံ့ပိုးပေးပါ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ဆွဲယူထည့်သော ပုံသည် ကြီးလွန်းနေပါသည်", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ပုံ စီမံလုပ်ဆောင်ခြင်း ချို့ယွင်းချက်", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "သက်ဝင်လှုပ်ရှားသော PNG ရုပ်ပုံများသည် လေးထောင့်ပုံဖြစ်ရပါမည်", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "သက်ဝင်လှုပ်ရှားသော ရုပ်ပုံများသည် အမြဲ ပြန်ကျော့နေရပါမည်", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "သက်ဝင်လှုပ်ရှားသော PNG ရုပ်ပုံ အတိုင်းအတာများသည် ကြီးလွန်းနေပါသည်", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "သက်ဝင်လှုပ်ရှားသော PNG ရုပ်ပုံ အတိုင်းအတာများသည် သေးလွန်းနေပါသည်", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ရုပ်ပုံများ အပ်လုဒ်လုပ်ခြင်း ချို့ယွင်းချက်- $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "ဆာဗာနှင့် ချိတ်ဆက်၍ မရနိုင်ပါ- $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "အထောက်အထားများ သက်တမ်းကုန်သွားသောကြောင့် ရုပ်ပုံများကို အပ်လုဒ်လုပ်ရာတွင် မအောင်မြင်ပါ။ Signal Desktop မှ ဝက်ဘ်ဆိုက်ကို တစ်ဖန် ပြန်ဖွင့်ပေးပါ။", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "လင့်ခ် ကူးပြီး", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ကျွန်ုပ်၏ စတစ်ကာသည် လင်းသော Theme တွင် ရှိပါသည်", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ကျွန်ုပ်၏ စတစ်ကာသည် မှောင်သော Theme တွင် ရှိပါသည်", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Sticker Pack Creator ကို သုံးရန် သင့်ဖုန်းနှင့် Desktop တွင် Signal ကို စီစဉ်သတ်မှတ်ပေးပါ", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "အီမိုဂျိ", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "တုံ့ပြန်မှုများကို စိတ်ကြိုက်လုပ်ရန်", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "အီမိုဂျိ အမည်လွှဲ", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/nb/messages.json b/sticker-creator/src/assets/locales/nb/messages.json new file mode 100644 index 000000000..0e5bd52ed --- /dev/null +++ b/sticker-creator/src/assets/locales/nb/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Klistremerkeskaper" + }, + "index--create-sticker-pack" : { + "message" : "Lag en ny klistremerkepakke" + }, + "SignIn--title" : { + "message" : "Lag en klistremerkepakke", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Klistremerker er også krypterte, som alt annet i Signal. Dette verktøyet kan brukes til å lage dine egne klistremerkepakker.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Innloggingskode", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Åpne Signal Desktop for å komme i gang", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Beklager, denne nettleseren støttes ikke. Åpne lenken i Firefox eller Chrome.", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Avbryt" + }, + "minutesAgo" : { + "message" : "$minutes$min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Ingen emoji funnet", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Søk i emojier", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Hudfarge $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smilefjes og mennesker", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Dyr og natur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Mat og drikke", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Reise og steder", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktiviteter", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekter", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flagg", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Klistremerkeskaper fra Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Verktøy for opprettelse av Signal-klistremerkepakke", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Veiledning for opprettelse av klistremerkepakke", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klikk for å legge til eller slippe bilder her", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Slipp bilder her", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Klistremerkepakke", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Klistremerkepakke", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Avbryt", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopier", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Neste", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Tilbake", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Legg til klistremerkene dine", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Fjern bildet", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klikk eller dra og slipp en fil for å legge til et klistremerke", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Klistremerker må være i PNG-, APNG- eller WebP-format og ha transparent bakgrunn og 512x512 piksler. Anbefalt marg er 16 piksler.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Vis marger", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Velg en emoji for hvert klistremerke", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dette gjør det mulig for oss å foreslå klistremerker når du skriver.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Bare noen få detaljer til …", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Tittel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Gi klistremerkepakken et navn", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Forfatter", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Skriv inn navnet på den som har laget klistremerkene", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Omslagsbilde", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Dette er bildet som vises når du deler klistremerkepakken", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Er du sikker på at du vil laste opp klistremerkepakken?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Last opp", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Du vil ikke lenger kunne gjøre endringer eller slette noe etter du har opprettet en klistremerkepakke.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Oppretter klistremerkepakken", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ av $total$ lastet opp", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulerer! Du har laget en klistremerkepakke.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Få tilgang til de nye klistremerkene dine via klistremerkeikonet, eller bruk lenken nedenfor til å dele dem med vennene dine.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Bruk hashtaggen $hashtag$ for å hjelpe andre med å finne URL-adressen til klistremerkepakken som du ønsker å gjøre offentlig tilgjengelig.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL-adresse for klistremerkepakken", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installer", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Lag enda en klistremerkepakke", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Ta en titt på denne nye klistremerkepakken jeg lagde for Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {{count,number} bilde ble lagt til} other {{count,number} bilder ble lagt til}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animasjoner støttes ikke for øyeblikket", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Bildet er for stort", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Klarte ikke å behandle bildet", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animerte PNG-bilder må være kvadratiske", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animerte bilder må være på kontinuerlig loop", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensjonene på det animerte PNG-bildet er for store", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensjonene på det animerte PNG-bildet er for små", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Feil ved bildeopplasting: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Klarte ikke å koble til serveren: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kunne ikke laste opp bildene på grunn av utløpt innloggingsinformasjon. Åpne nettstedet på nytt fra Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Lenken er kopiert", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Klistremerket mitt i lyst tema", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Klistremerket mitt i mørkt tema", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Konfigurer Signal på telefonen og skrivebordet ditt for å bruke verktøyet for opprettelse av klistremerkepakke", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Tilpass reaksjonene", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-navn", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/nl/messages.json b/sticker-creator/src/assets/locales/nl/messages.json new file mode 100644 index 000000000..2b85c950b --- /dev/null +++ b/sticker-creator/src/assets/locales/nl/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Sticker-art" + }, + "index--create-sticker-pack" : { + "message" : "Maak een nieuw stickerpakket" + }, + "SignIn--title" : { + "message" : "Een Stickerpakket maken", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Net als bij alles in Signal, zijn stickers ook versleuteld. Gebruik deze tool om je eigen aangepaste stickerpakketten te maken.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Inlogcode", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Open Signal Desktop om te beginnen", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Sorry, je browser wordt niet ondersteund. Open deze link in Firefox of Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Annuleren" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Geen emoji gevonden", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Emoji zoeken", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Huidskleur $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Gezichtjes & mensen", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Dieren & natuur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Eten & drinken", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Reizen & plaatsen", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Activiteiten", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objecten", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symbolen", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Vlaggen", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Art-creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal Stickerpakketmaker", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Richtlijnen voor Stickerpakketmaker", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klik hier of sleep naar hier om afbeeldingen toe te voegen", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Sleep hier afbeeldingen naartoe", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Stickerpakket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Stickerpakket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Annuleren", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiëren", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Volgende", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Terug", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Voeg je stickers toe", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Afbeelding verwijderen", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klik hier of sleep hier een bestand naartoe om een sticker toe te voegen", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Stickers moeten een PNG-, APNG- of WebP-bestand zijn met een (doorzichtige) achtergrond van 512 bij 512 pixels, liefst inclusief een marge rondom van 16 pixels.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Bekijk marges", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Wijs aan elke sticker een emoji toe", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dit maakt het voor Signal mogelijk om stickers voor te stellen terwijl je een bericht typt.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Nog wat details...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Geef je stickerpakket een naam", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Maker", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Voer de naam van de maker in", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Omslagafbeelding", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Dit is de afbeelding die mensen te zien krijgen als je je stickerpakket met anderen deelt", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Weet je zeker dat je je stickerpakket wilt uploaden?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Uploaden", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Je kunt je stickerpakket niet langer aanpassen of wissen nadat je deze hebt aangemaakt.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Je stickerpakket uploaden", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ van $total$ geüpload", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gefeliciteerd, je hebt een stickerpakket gemaakt!", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Gebruik jouw nieuwe stickers via het sticker-pictogram, of deel ze met je kennissen door middel van de link hieronder.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Als je jouw stickerpakket publiekelijk bekend wilt maken, gebruik dan de hashtag $hashtag$ om anderen te helpen de URL van jouw stickerpakket te ontdekken.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Stickerpakket-URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installeren", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Nog een stickerpakket maken", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Ik heb voor Signal dit nieuwe stickerpakket gemaakt. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 afbeelding toegevoegd} other {{count,number} afbeeldingen toegevoegd}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Geanimeerde extra's worden momenteel niet ondersteund", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Het afbeeldingsbestand is te groot", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Fout bij het verwerken van afbeelding", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Geanimeerde PNG-afbeeldingen moeten vierkant zijn", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Geanimeerde afbeeldingen moeten eindeloos herhaald worden", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Afmetingen van geanimeerde PNG-afbeeldingen zijn te groot", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Afmetingen van geanimeerde PNG-afbeeldingen zijn te klein", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Fout bij het uploaden van afbeeldingen: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Kan geen verbinding maken met server: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kan afbeeldingen niet uploaden vanwege verlopen inloggegevens. Open de website opnieuw vanaf Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link gekopieerd", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mijn sticker in het lichte thema", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mijn sticker in het donkere thema", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Je moet eerst Signal in gebruik nemen op je telefoon en op je desktop voor je de stickermaker kunt gebruiken", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Reactie-balk personaliseren", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-alias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/pa-IN/messages.json b/sticker-creator/src/assets/locales/pa-IN/messages.json new file mode 100644 index 000000000..92ac1fa4b --- /dev/null +++ b/sticker-creator/src/assets/locales/pa-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ਸਟਿੱਕਰ ਆਰਟ ਕ੍ਰੀਏਟਰ" + }, + "index--create-sticker-pack" : { + "message" : "ਨਵਾਂ ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਓ" + }, + "SignIn--title" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਓ", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal ਵਿੱਚ ਹਰ ਇੱਕ ਚੀਜ਼ ਵਾਂਗ, ਸਟਿੱਕਰ ਵੀ ਇਨਕ੍ਰਿਪਟਡ ਹਨ। ਆਪਣੇ ਖੁਦ ਦੇ ਕਸਟਮ ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਉਣ ਲਈ ਇਸ ਟੂਲ ਦੀ ਵਰਤੋਂ ਕਰੋ।", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "ਸਾਈਨ ਇਨ ਕੋਡ", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "ਸ਼ੁਰੂਆਤ ਕਰਨ ਲਈ Signal Desktop ਖੋਲ੍ਹੋ", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ਮਾਫ਼ ਕਰਨਾ, ਤੁਹਾਡਾ ਬ੍ਰਾਊਜ਼ਰ ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਇਸ ਲਿੰਕ ਨੂੰ Firefox ਜਾਂ Chrome ਵਿੱਚ ਖੋਲ੍ਹੋ", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ਰੱਦ ਕਰੋ" + }, + "minutesAgo" : { + "message" : "$minutes$ ਮਿੰਟ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ਕੋਈ ਵੀ ਇਮੋਜੀ ਨਹੀਂ ਲੱਭਿਆ", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ਇਮੋਜੀ ਖੋਜੋ", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "ਸਕਿੱਨ ਟੋਨ $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "ਸਮਾਇਲੀ ਅਤੇ ਲੋਕ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "ਜਾਨਵਰ ਅਤੇ ਕੁਦਰਤ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "ਖਾਣਾ-ਪੀਣਾ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ਸੈਰ ਸਪਾਟਾ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "ਗਤੀਵਿਧੀਆਂ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "ਚੀਜ਼ਾਂ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "ਚਿੰਨ੍ਹ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "ਝੰਡੇ", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal ਆਰਟ ਕ੍ਰੀਏਟਰ", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal ਸਟਿੱਕਰ ਪੈਕ ਕ੍ਰੀਏਟਰ", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal ਲੋਗੋ", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ ਕ੍ਰੀਏਟਰ ਦਿਸ਼ਾ-ਨਿਰਦੇਸ਼", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "ਤਸਵੀਰਾਂ ਨੂੰ ਇੱਥੇ ਸ਼ਾਮਲ ਕਰਨ ਜਾਂ ਡਰੌਪ ਕਰਨ ਲਈ ਕਲਿੱਕ ਕਰੋ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "ਤਸਵੀਰਾਂ ਇੱਥੇ ਡਰੌਪ ਕਰੋ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ਰੱਦ ਕਰੋ", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "ਕਾਪੀ ਕਰੋ", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "ਅੱਗੇ", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "ਪਿੱਛੇ ਜਾਓ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "ਆਪਣੇ ਸਟਿੱਕਰ ਸ਼ਾਮਲ ਕਰੋ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ਤਸਵੀਰ ਹਟਾਓ", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "ਸਟਿੱਕਰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਕਲਿੱਕ ਜਾਂ ਡਰੈਗ/ਡਰੌਪ ਕਰੋ", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "ਸਟਿੱਕਰ ਪਾਰਦਰਸ਼ੀ ਬੈਕਗਰਾਊਂਡ ਦੇ ਨਾਲ PNG, APNG, ਜਾਂ WebP ਫਾਰਮੈਟ ਵਿੱਚ ਅਤੇ 512x512 ਪਿਕਸਲ ਦੇ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ। ਹਾਸ਼ੀਆ 16px ਰੱਖਣ ਦੀ ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "ਹਾਸ਼ੀਏ ਦੇਖੋ", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ਹਰੇਕ ਸਟਿੱਕਰ ਵਿੱਚ ਕੋਈ ਇਮੋਜੀ ਸ਼ਾਮਲ ਕਰੋ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "ਇਸ ਨਾਲ ਸਾਨੂੰ ਉਸ ਵੇਲੇ ਸਟਿੱਕਰਾਂ ਦਾ ਸੁਝਾਅ ਦੇਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਸੁਨੇਹੇ ਭੇਜ ਰਹੇ ਹੁੰਦੇ ਹੋ।", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "ਬੱਸ ਥੋੜ੍ਹੀ ਜਾਣਕਾਰੀ ਹੋਰ…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ਸਿਰਲੇਖ", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "ਆਪਣੇ ਸਟਿੱਕਰ ਪੈਕ ਨੂੰ ਨਾਮ ਦਿਓ", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "ਲੇਖਕ", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "ਉਹ ਨਾਮ ਦਰਜ ਕਰੋ ਜਿਸ ਅਧੀਨ ਤੁਸੀਂ ਆਪਣੇ ਸਟਿੱਕਰਾਂ ਨੂੰ ਜਮ੍ਹਾਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "ਕਵਰ ਤਸਵੀਰ", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "ਇਹ ਤਸਵੀਰ ਉਦੋਂ ਦਿਖਾਈ ਦੇਵੇਗੀ ਜਦੋਂ ਤੁਸੀਂ ਆਪਣੇ ਸਟਿੱਕਰ ਪੈਕ ਨੂੰ ਸਾਂਝਾ ਕਰੋਗੇ", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਆਪਣੇ ਸਟਿੱਕਰ ਪੈਕ ਨੂੰ ਅੱਪਲੋਡ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "ਅੱਪਲੋਡ ਕਰੋ", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਉਣ ਤੋਂ ਬਾਅਦ ਤੁਸੀਂ ਉਸ ਨੂੰ ਸੋਧ ਜਾਂ ਮਿਟਾ ਨਹੀਂ ਸਕੋਗੇ।", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "ਤੁਹਾਡਾ ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਇਆ ਜਾ ਰਿਹਾ ਹੈ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ ਵਿੱਚੋਂ $count$ ਨੂੰ ਅੱਪਲੋਡ ਕੀਤਾ ਗਿਆ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "ਵਧਾਈਆਂ! ਤੁਸੀਂ ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਇਆ ਹੈ।", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "ਸਟਿੱਕਰ ਆਈਕਾਨ ਦੇ ਰਾਹੀਂ ਆਪਣੇ ਨਵੇਂ ਸਟਿੱਕਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ, ਜਾਂ ਹੇਠਾਂ ਦਿੱਤੇ ਲਿੰਕ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਉਹਨਾਂ ਨੂੰ ਆਪਣੇ ਦੋਸਤਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰੋ।", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "ਜਿਹੜੇ ਕਸਟਮ ਸਟਿੱਕਰ ਪੈਕ ਤੁਸੀਂ ਜਨਤਕ ਤੌਰ 'ਤੇ ਉਪਲਬਧ ਕਰਵਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ ਉਹਨਾਂ ਦਾ URL ਲੱਭਣ ਵਿੱਚ ਲੋਕਾਂ ਦੀ ਮਦਦ ਕਰਨ ਲਈ $hashtag$ ਹੈਸ਼ਟੈਗ ਦੀ ਵਰਤੋਂ ਕਰੋ।", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ਸਥਾਪਤ ਕਰੋ", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "ਇੱਕ ਹੋਰ ਸਟਿੱਕਰ ਪੈਕ ਬਣਾਓ", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ਇਹ ਨਵਾਂ ਸਟਿੱਕਰ ਪੈਕ ਦੇਖੋ ਜੋ ਮੈਂ Signal ਦੇ ਲਈ ਬਣਾਇਆ ਹੈ। #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 ਤਸਵੀਰ ਸ਼ਾਮਲ ਕੀਤੀ ਗਈ} other {{count,number} ਤਸਵੀਰਾਂ ਸ਼ਾਮਲ ਕੀਤੀਆਂ ਗਈਆਂ}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ਐਨੀਮੇਟਿਡ ਆਰਟ ਫ਼ਿਲਹਾਲ ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ਡਰੌਪ ਕੀਤੀ ਤਸਵੀਰ ਬਹੁਤ ਵੱਡੀ ਹੈ", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "ਤਸਵੀਰ ਉੱਤੇ ਕਾਰਵਾਈ ਕਰਨ ਵੇਲੇ ਕੋਈ ਗੜਬੜੀ ਪੇਸ਼ ਆਈ", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "ਐਨੀਮੇਟਡ PNG ਤਸਵੀਰਾਂ ਵਰਗਾਕਾਰ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "ਐਨੀਮੇਟਡ ਤਸਵੀਰਾਂ ਹਮੇਸ਼ਾ ਲੂਪ ਵਿੱਚ ਰਹਿਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ਐਨੀਮੇਟਡ PNG ਤਸਵੀਰ ਦਾ ਆਕਾਰ ਬਹੁਤ ਵੱਡਾ ਹੈ", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ਐਨੀਮੇਟਡ PNG ਤਸਵੀਰ ਦਾ ਆਕਾਰ ਬਹੁਤ ਛੋਟਾ ਹੈ", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "ਤਸਵੀਰਾਂ ਅੱਪਲੋਡ ਕਰਨ ਵੇਲੇ ਗੜਬੜੀ ਪੇਸ਼ ਆਈ: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "ਸਰਵਰ ਨਾਲ ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "ਕ੍ਰੀਡੈਨਸ਼ਿਅਲ ਦੀ ਪੁੱਗਣ ਕਾਰਨ ਤਸਵੀਰਾਂ ਅੱਪਲੋਡ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹੇ। ਕਿਰਪਾ ਕਰਕੇ Signal Desktop ਤੋਂ ਵੈੱਬਸਾਈਟ ਨੂੰ ਦੁਬਾਰਾ ਖੋਲ੍ਹੋ।", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "ਲਿੰਕ ਕਾਪੀ ਕੀਤਾ ਗਿਆ", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ਲਾਈਟ ਥੀਮ ਵਿੱਚ ਮੇਰਾ ਸਟਿੱਕਰ", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ਡਾਰਕ ਥੀਮ ਵਿੱਚ ਮੇਰਾ ਸਟਿੱਕਰ", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "ਸਟਿੱਕਰ ਪੈਕ ਕ੍ਰੀਏਟਰ ਨੂੰ ਵਰਤਣ ਲਈ ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੇ ਫ਼ੋਨ ਅਤੇ ਡੈਸਕਟੌਪ ’ਤੇ Signal ਨੂੰ ਸੈੱਟ ਅੱਪ ਕਰੋ", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ਇਮੋਜੀ", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ਰਿਐਕਸ਼ਨ ਕਸਟਮਾਈਜ਼ ਕਰੋ", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ਇਮੋਜੀ ਦਾ ਉਪਨਾਮ", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/pl/messages.json b/sticker-creator/src/assets/locales/pl/messages.json new file mode 100644 index 000000000..6c85a84cd --- /dev/null +++ b/sticker-creator/src/assets/locales/pl/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Kreator pakietów naklejek" + }, + "index--create-sticker-pack" : { + "message" : "Utwórz nowy pakiet naklejek" + }, + "SignIn--title" : { + "message" : "Utwór pakiet naklejek", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Naklejki, podobnie jak całość komunikacji w Signal, są szyfrowane. Użyj tego narzędzia, aby utworzyć własne niestandardowe pakiety naklejek.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kod rejestracji", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Aby rozpocząć, otwórz Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Przykro nam, ale Twoja przeglądarka nie jest obsługiwana. Otwórz ten link w przeglądarce Firefox lub Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Anuluj" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nie znaleziono emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Szukaj emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Odcień skóry $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Buźki i ludzie", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Zwierzęta i przyroda", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Jedzenie i napoje", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Podróże i miejsca", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktywności", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Obiekty", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symbole", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flagi", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Kreator grafik Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Kreator pakietów naklejek Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Wskazówki dla twórców pakietów naklejek", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliknij lub przeciągnij tutaj obrazy, aby je dodać", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Upuść obrazy tutaj", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pakiet naklejek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pakiet naklejek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Anuluj", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiuj", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Dalej", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Wróć", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Dodaj swoje naklejki", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Usuń obraz", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kliknij lub przeciągnij i upuść, aby dodać naklejkę", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Naklejki muszą być w formacie PNG, APNG lub WebP, mieć przezroczyste tło i rozmiar 512x512 pikseli. Zalecany margines to 16 pikseli.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Wyświetl marginesy", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Dodaj emoji do każdej naklejki", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Dzięki temu będziemy mogli proponować Ci naklejki podczas pisania.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Jeszcze tylko kilka drobiazgów…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Tytuł", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Nadaj nazwę swojemu pakietowi naklejek", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Podpisz się pod swoim dziełem", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Obraz poglądowy", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "To ten obraz pojawi się, gdy udostępnisz swój pakiet naklejek", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Czy na pewno chcesz wysłać swój pakiet naklejek?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Wyślij", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Po utworzeniu pakietu naklejek stracisz możliwość jego edycji lub usunięcia.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Tworzenie pakietu naklejek", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Wysłano $count$ z $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulacje! Stworzyłeś(-aś) pakiet naklejek.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Użyj swoich nowych naklejek, korzystając z ikony naklejki, lub udostępnij je znajomym za pośrednictwem poniższego linku.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Użyj hasztagu $hashtag$, aby ułatwić użytkownikom odnajdywanie adresów URL Twoich upublicznionych pakietów naklejek.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Adres URL do pakietu naklejek", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Zainstaluj", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Stwórz kolejny pakiet naklejek", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Rzuć okiem na ten nowy pakiet naklejek, który stworzyłem(-am) dla Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Dodano 1 obraz} few {Dodano {count,number} obrazy} many {Dodano {count,number} obrazów} other {Dodano {count,number} obrazów}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Obecnie nie obsługujemy animowanej grafiki", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Dodany obraz jest zbyt duży", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Błąd przetwarzania obrazu", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animowane obrazy PNG muszą być kwadratowe", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animowane obrazy muszą być zapętlone", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animowany obraz PNG jest zbyt duży", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animowany obraz PNG jest zbyt mały", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Błąd przesyłania obrazów: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nie można połączyć się z serwerem: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nie udało się przesłać obrazów z powodu wygasłych danych uwierzytelniających. Otwórz ponownie stronę z Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Skopiowano link", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moja naklejka w motywie jasnym", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moja naklejka w motywie ciemnym", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Aby móc używać kreatora pakietów naklejek, połącz konto Signal na swoim telefonie z tym na komputerze", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Dostosuj reakcje", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/pt-BR/messages.json b/sticker-creator/src/assets/locales/pt-BR/messages.json new file mode 100644 index 000000000..2c411757b --- /dev/null +++ b/sticker-creator/src/assets/locales/pt-BR/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Criador de figurinhas" + }, + "index--create-sticker-pack" : { + "message" : "Criar novo pacote de figurinhas" + }, + "SignIn--title" : { + "message" : "Crie um pacote de figurinhas", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "As figurinhas também são criptografadas, como tudo no Signal. Use essa ferramenta para criar seus próprios pacotes personalizados de figurinhas.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Código de login", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Abrir Signal Desktop para começar", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Desculpe, seu navegador não é compatível. Abra este link no Firefox ou no Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cancelar" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nenhum emoji encontrado", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Pesquisar emojis", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Tom de pele $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Emojis e pessoas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animais e Natureza", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Comidas e Bebidas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viagens e Lugares", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Atividades", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objetos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Símbolos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bandeiras", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Criador de arte do Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Criador de pacotes de figurinhas do Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logotipo do Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Diretrizes de Criação de pacotes de figurinhas", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Clique para adicionar imagens ou solte-as aqui", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Solte imagens aqui", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pacote de figurinhas", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pacote de figurinhas", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cancelar", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copiar", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Avançar", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Voltar", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Adicionar suas figurinhas", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Remover imagem", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Clique para adicionar uma figurinha ou arraste e solte-a aqui", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "As figurinhas precisam estar no formato PNG, APNG ou WebP com um fundo transparente e tamanho de 512x512 pixels. A margem recomendada é de 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ver margens", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Adicione um emoji para cada figurinha", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Assim, poderemos sugerir figurinhas pra você no chat.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Só mais alguns detalhes…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Título", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Dê um nome ao seu pacote de figurinhas", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Digite um nome para ficar associado quando enviar suas figurinhas", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Cobrir imagem", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Essa será a imagem exibida quando você compartilhar seu pacote de figurinhas", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Tem certeza que deseja carregar seu pacote de figurinhas?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Carregar", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Você não poderá mais editar ou excluir depois de criar o pacote de figurinhas.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Criando seu pacote de figurinhas", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ de $total$ enviadas", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Parabéns! Você criou um pacote de figurinhas.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Acesse suas novas figurinhas por meio do ícone de figurinha, ou compartilhe com seus amigos pelo link abaixo.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Use a hashtag $hashtag$ para ajudar outras pessoas a encontrar as URLs para qualquer pacote de figurinhas personalizado que você gostaria de tornar acessível ao público.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL do pacote de figurinhas", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalar", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Criar outro pacote de figurinhas", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Dê uma olhada nesse novo pacote de figurinhas que criei para o Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imagem adicionada} other {{count,number} imagens adicionadas}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "No momento, ainda não suportamos animação", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "A imagem enviada é muito grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Erro ao processar imagem", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "As imagens PNG animadas precisam ser quadradas", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "As imagens animadas precisam ter uma repetição constante", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "As dimensões da imagem PNG são muito grandes", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "As dimensões da imagem PNG são muito pequenas", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Erro ao carregar imagem: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Não foi possível conectar ao servidor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Falha ao carregar imagens devido a credenciais expiradas. Abra novamente o site no Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link copiado", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Minha figurinha no tema claro", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Minha figurinha no tema escuro", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Configure o Signal no seu telefone e desktop para usar o Criador de pacote de figurinhas", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizar reações", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nome do emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/pt-PT/messages.json b/sticker-creator/src/assets/locales/pt-PT/messages.json new file mode 100644 index 000000000..e6b55c69e --- /dev/null +++ b/sticker-creator/src/assets/locales/pt-PT/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Criador de arte de autocolantes" + }, + "index--create-sticker-pack" : { + "message" : "Criar novo pacote de autocolantes" + }, + "SignIn--title" : { + "message" : "Criar um pacote de autocolantes", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Tal como tudo o resto no Signal, os autocolantes também estão encriptados. Use esta ferramenta para criar os seus próprios pacotes de autocolantes.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Código de login", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Abra o Signal Desktop para começar", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Lamentamos, o seu navegador não é suportado. Abra este link no Firefox ou Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Cancelar" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nenhum emoji encontrado", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Procurar emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Tom de pele $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys e pessoas", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animais e natureza", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Comida e bebida", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Viagens e locais", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Atividades", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objetos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Símbolos", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bandeiras", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Criador de arte do Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Criador de pacotes de autocolantes do Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo do Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Diretrizes do criador de pacotes de autocolantes", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Clique para adicionar ou largar imagens aqui", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Largar imagens aqui", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pacote de autocolantes", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pacote de autocolantes", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Cancelar", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copiar", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Seguinte", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Voltar", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Adicione os seus autocolantes", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Remover imagem", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Clique ou arraste/largue um ficheiro para adicionar um autocolante", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Os autocolantes deverão estar no formato PNG, APNG ou WebP, com um fundo transparente e 512x512 pixeis. A margem recomendada é de 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ver margens", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Adicionar um emoji para cada autocolante", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Isto permite-nos sugerir autocolantes quando envia mensagens.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Apenas mais alguns detalhes...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Título", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Dá um nome ao pacote de autocolantes", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Insira um nome de autor para os autocolantes", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imagem da capa", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Esta é a imagem que será exibida quando partilhar o seu pacote de autocolantes", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Tem a certeza que deseja carregar o seu pacote de autocolantes?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Carregar", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Deixará de poder editar ou eliminar depois de criar um pacote de autocolantes.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "A criar o seu pacote de autocolantes", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Carregado(s) $count$ de $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Parabéns! Criou um pacote de autocolantes.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Aceda aos seus novos autocolantes através do ícone de autocolante, ou partilhe-os com os seus amigos utilizando a ligação abaixo.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Utilize o hastag $hashtag$ para ajudar outras pessoas a encontrarem os URLs para qualquer pacote de autocolantes que deseja tornar publicamente acessíveis.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL do pacote de autocolantes", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalar", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Criar outro pacote de autocolantes", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Veja este autocolante que eu criei para o Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imagem adicionada} other {{count,number} imagens adicionadas}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Arte com animações não é atualmente suportada", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "A imagem largada é demasiado grande", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Erro ao processar imagem", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "As imagens PNG animadas têm de ser quadradas", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "As imagens animadas têm de fazer loop infinito", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "As dimensões da imagem PNG animada são demasiado grandes", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "As dimensões da imagem PNG animada são demasiado pequenas", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Erro ao carregar imagens: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Não foi possível ligar ao servidor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Falha ao carregar imagens devido a credenciais expiradas. Volte a abrir o website a partir do Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Ligação copiada", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "O meu autocolante no tema claro", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "O meu autocolante no tema escuro", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Configure o Signal no seu telemóvel e desktop para utilizar o Criador de pacotes de autocolantes", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizar reações", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nome do emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ro-RO/messages.json b/sticker-creator/src/assets/locales/ro-RO/messages.json new file mode 100644 index 000000000..4d3fa4379 --- /dev/null +++ b/sticker-creator/src/assets/locales/ro-RO/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Creator de stickere artistice" + }, + "index--create-sticker-pack" : { + "message" : "Creează un nou pachet de stickere" + }, + "SignIn--title" : { + "message" : "Creează un pachet de stickere", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "La fel ca totul în Signal, și stickerele sunt criptate. Folosește acest instrument și creează-ți propriile pachete de stickere.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Cod de conectare", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Deschide Signal Desktop ca să începi", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Ne pare rău, browser-ul tău nu este acceptat. Deschide acest link în Firefox sau Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Anulează" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nu a fost găsit nici un emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Căutare emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Culoare piele $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smiley-uri și Oameni", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animale și Natură", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Mâncare și Băuturi", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Călătorii și Locații", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Activități", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Obiecte", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboluri", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Steaguri", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Creator de artă Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Creator Pachet Stickere Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Reguli Creator Pachet de Stickere", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Click pentru a adăuga sau plasează imaginile aici", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Trage imaginile aici", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pachet autocolante", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pachet autocolante", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Anulează", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Copiere", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Următorul", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Înapoi", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Adaugă autocolantele tale", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Elimină imaginea", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Dă click sau glisează și fixează un fișier pentru a adăuga un sticker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Autocolantele trebuie să fie în format PNG, APNG sau WebP cu un fundal transparent și o mărime de 512x512 pixeli. Marginea recomandată este de 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Vezi marginile", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Adaugă un emoji la fiecare sticker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Acest lucru ne permite să îți sugerăm stickere în timp ce scrii.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Doar încă câteva detalii...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titlu", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Numește-ți pachetul de stickere", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Introdu un nume ca să-ți trimiți stickerele", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imagine de copertă", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Aceasta este imaginea care va fi afișată când partajezi pachetul tău cu autocolante", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Sigur vrei să încarci pachetul tău cu stickere?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Încarcă", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Nu vei mai putea modifica sau șterge după crearea unui pachet de autocolante.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Se creează pachetul cu autocolante", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ din $total$ încărcate", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Felicitări! Ai creat un pachet cu autocolante.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Accesează noile autocolante prin pictograma autocolantului sau partajează cu prietenii utilizând linkul de mai jos.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Folosește hashtag-ul $hashtag$ pentru a-i ajuta pe alți oameni să găsească URL-urile pentru orice pachet de stickere pe care ai dori să-l faci accesibil public.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL Pachetul cu stickere", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instalează", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Creează un alt pachet cu autocolante", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Vezi acest nou pachet cu stickere pe care l-am creat pentru Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imagine adăugată} few {{count,number} imagini adăugate} other {{count,number} de imagini adăugate}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Creațiile animate nu sunt momentan acceptate", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Imaginea aleasă este prea mare", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Eroare la procesarea imaginii", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Imaginile PNG animate trebuie să fie pătrate", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Imaginile animate trebuie să se repete continuu", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensiunile imaginilor PNG animate sunt prea mari", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensiunile imaginilor PNG animate sunt prea mici", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Eroare la încărcarea imaginilor: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nu ne putem conecta la server: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nu am putut încărca imagini datorită credențialelor expirate. Redeschide site-ul web cu Signal Desktop din nou.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Link copiat", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Autocolantul meu în tema deschisă", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Stickerul meu în tema întunecată", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Te rugăm să configurezi Signal pe telefonul și desktopul tău pentru a utiliza creatorul de stickere", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Personalizare reacții", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ru/messages.json b/sticker-creator/src/assets/locales/ru/messages.json new file mode 100644 index 000000000..7023ac57a --- /dev/null +++ b/sticker-creator/src/assets/locales/ru/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Художественный редактор стикеров" + }, + "index--create-sticker-pack" : { + "message" : "Создать новый набор стикеров" + }, + "SignIn--title" : { + "message" : "Создать набор стикеров", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Как и всё остальное в Signal, стикеры тоже зашифрованы. Используйте этот инструмент для создания собственных наборов стикеров.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Код для входа", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Откройте Signal Desktop, чтобы начать", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Извините, ваш браузер не поддерживается. Пожалуйста, откройте эту ссылку в Firefox или Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Отменить" + }, + "minutesAgo" : { + "message" : "$minutes$м", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Эмодзи не найдено", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Поиск эмодзи", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Оттенок кожи $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Смайлики и люди", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Животные и растения", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Еда и напитки", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Путешествия и места", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Активность", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Предметы", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Символы", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Флаги", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Художественный редактор Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Редактор наборов стикеров Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Логотип Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Руководство по редактору наборов стикеров", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Нажмите, чтобы добавить изображения, или перетащите их сюда", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Отпустите изображения здесь", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Набор стикеров", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Набор стикеров", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Отменить", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Копировать", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Далее", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Назад", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Добавьте ваши стикеры", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Удалить изображение", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Нажмите или перетащите файл, чтобы добавить стикер", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Стикеры должны быть в формате PNG, APNG или WebP с прозрачным фоном, размером 512 x 512 пикселей. Рекомендуемое поле (margin) — 16 пикселей.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Посмотреть поля (margin)", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Назначьте эмодзи каждому стикеру", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Это позволит нам предлагать вам стикеры, когда вы общаетесь.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Ещё несколько деталей…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Название", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Назовите свой набор стикеров", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Введите имя, под которым будут представлены ваши стикеры", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Изображение обложки", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Это изображение, которое будет показано, когда вы делитесь вашим набором стикеров", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Вы действительно хотите загрузить свой набор стикеров?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Загрузить на сервер", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Вы больше не сможете внести изменения в этот набор стикеров (или удалить его) после создания.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Создаём ваш набор стикеров", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ из $total$ загружено", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Поздравляем! Вы создали набор стикеров.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Получите доступ к вашим новым стикерам через значок стикеров или поделитесь ими с друзьями, используя ссылку ниже.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Используйте хэштег $hashtag$, чтобы помочь другим людям найти ссылки на любые пользовательские наборы стикеров, которые вы хотите сделать общедоступными.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Ссылка на набор стикеров", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Установить", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Создать ещё один набор стикеров", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Посмотрите на этот новый набор стикеров, созданных мною для Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 изображение добавлено} few {{count,number} изображения добавлено} many {{count,number} изображений добавлено} other {{count,number} изображения добавлено}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Анимация в данный момент не поддерживаются", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Изображение, которое вы используете, слишком большое", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Ошибка обработки изображения", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимированные PNG-изображения должны быть квадратными", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимированные изображения должны повторяться бесконечно", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Размеры анимированного PNG-изображения слишком большие", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Размеры анимированного PNG-изображения слишком маленькие", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Ошибка выгрузки изображений: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Не удалось подключиться к серверу: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Не удалось загрузить изображения из-за истёкших учётных данных. Откройте веб-сайт снова из Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Ссылка скопирована", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Мой стикер в светлой теме", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Мой стикер в тёмной теме", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Пожалуйста, настройте Signal на вашем телефоне и ПК, чтобы использовать редактор наборов стикеров", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Эмодзи", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Настроить реакции", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Псевдоним эмодзи", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sk-SK/messages.json b/sticker-creator/src/assets/locales/sk-SK/messages.json new file mode 100644 index 000000000..0f1a7eb2a --- /dev/null +++ b/sticker-creator/src/assets/locales/sk-SK/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Kreatívny nástroj na vytváranie nálepiek" + }, + "index--create-sticker-pack" : { + "message" : "Vytvoriť nový balíček nálepiek" + }, + "SignIn--title" : { + "message" : "Vytvoriť balíček nálepiek", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Tak, ako všetko ostatné v aplikácii Signal, aj nálepky sú šifrované. Vytvorte si vlastné balíčky nálepiek pomocou tohto nástroja.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Prihlasovací kód", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Ak chcete začať, otvorte Signal Desktop", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Ľutujeme, váš prehliadač nie je podporovaný. Otvorte tento odkaz v prehliadači Firefox alebo Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Zrušiť" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nenašli sa žiadne emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Hľadať emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Farba pleti $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smajlíky a ľudia", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Zvieratá a príroda", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Jedlo a nápoje", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Cestovanie a miesta", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivity", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekty", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboly", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Vlajky", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Kreatívny nástroj tvorby nálepiek Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Nástroj na vytváranie balíčkov nálepiek Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logo Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Pokyny na vytváranie balíčkov nálepiek", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliknite pre pridanie obrázkov alebo ich presuňte myšou sem", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Presuňte obrázky sem", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Balíček nálepiek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Balíček nálepiek", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Zrušiť", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopírovať", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Ďalej", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Späť", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Pridajte si nálepky", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Odstrániť obrázok", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Kliknutím alebo presunutím súboru pridáte nálepku", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Nálepky musia byť vo formáte PNG, APNG alebo WebP s priehľadným pozadím a rozmermi 512x512 pixelov. Doporučený okraj je 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Zobraziť okraje", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Pridajte emoji ku každej nálepke", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Táto možnosť nám dovolí odporučiť vám nálepky, keď si s niekým píšete.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Už len pár detailov…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Názov", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Pomenujte balíček nálepiek", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Zadajte meno, pod ktorým budete odosielať svoje nálepky", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Titulný obrázok", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Toto je obrázok, ktorý sa zobrazí, keď budete zdielať svoj balíček nálepiek", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Naozaj chcete nahrať svoj balíček nálepiek?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Nahrať", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Po vytvorení balíčku nálepiek ho už viac nebudete môcť upravovať ani zmazať.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Vytváram váš balíček nálepiek", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ z $total$ je nahratých", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Gratulujeme! Vytvorili ste balíček nálepiek.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Ku svojim novým nálepkám sa dostanete cez ikonu nálepiek alebo ich môžete zdieľať so svojimi priateľmi pomocou odkazu nižšie.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Použite hashtag $hashtag$ , aby ste pomohli ostatným nájsť adresu pre ktorýkoľvek vytvorený balíček nálepiek, ktorý by ste chceli zverejniť.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Adresa balíčku nálepiek", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Inštalovať", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Vytvoriť ďalší balíček nálepiek", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Vyskúšajte nový balíček nálepiek, ktorý som vytvoril/a pre Signal. #zalepsvojesúkromie", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Bol pridaný 1 obrázok} few {Boli pridané {count,number} obrázky} many {Bolo pridaného {count,number} obrázka} other {Bolo pridaných {count,number} obrázkov}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animované nálepky momentálne nepodporujeme", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Presunutý obrázok je príliš veľký", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Chyba pri spracovaní obrázku", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animované obrázky PNG musia byť štvorcové", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animované obrázky sa musia donekonečna opakovať", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Rozmery animovaného obrázku PNG sú príliš veľké", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Rozmery animovaného obrázku PNG sú príliš malé", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Chyba pri nahrávaní obrázkov: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nedá sa pripojiť k serveru: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nepodarilo sa nahrať obrázky z dôvodu vypršania platnosti prihlasovacích údajov. Znova otvorte webovú stránku zo Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Odkaz skopírovaný", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moja nálepka v svetlej téme", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moja nálepka v tmavej téme", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Pre používanie nástroja na vytváranie balíčkov nálepiek si musíte nastaviť Signal na svojom telefóne a počítači", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Prispôsobiť reakcie", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Meno emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sl-SI/messages.json b/sticker-creator/src/assets/locales/sl-SI/messages.json new file mode 100644 index 000000000..c4068db30 --- /dev/null +++ b/sticker-creator/src/assets/locales/sl-SI/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Ustvarjalnik nalepk" + }, + "index--create-sticker-pack" : { + "message" : "Ustvari nov paket nalepk" + }, + "SignIn--title" : { + "message" : "Ustvari paket nalepk", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Kot vse ostalo pri Signalu, so tudi nalepke šifrirane. Uporabite to orodje, da ustvarite lastne pakete nalepk po meri.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Koda za prijavo", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Odprite Signal Desktop, da začnete", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Oprostite, vaš brskalnik ni podprt. Odprite to povezavo v Firefoxu ali Chromu", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Prekliči" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Najden ni bil noben emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Poišči emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Odtenek kože $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smeški in ljudje", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Živali in narava", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Hrana in pijača", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Potovanja in kraji", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Dejavnosti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekti", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simboli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Zastave", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signalov ustvarjalnik umetnosti", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signalov ustvarjalnik paketov nalepk", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signalov logotip", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Smernice za uporabo ustvarjalnika paketov nalepk", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Za dodajanje slik kliknite ali povlecite sem", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Spustite slike tukaj", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paket nalepk", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paket nalepk", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Prekliči", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiraj", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Naprej", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Nazaj", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Dodajte svoje nalepke", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Odstrani sliko", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Za dodajanje nalepke kliknite ali povlecite/spustite datoteko", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Nalepke morajo biti v formatu PNG, AONG ali WebP, s prosojnim ozadjem in velikosti 512 x 512 pikslov. Priporočen rob je 16 px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ogled robov", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Vsaki nalepki dodajte emoji", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "To nam omogoča, da vam med tipkanjem priporočamo nalepke.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Samo še nekaj malenkosti ...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Naslov", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Poimenujte svoj paket nalepk", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Avtor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Vnesite ime, pod katerim želite oddati svoje nalepke", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Naslovna slika", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ta slika bo prikazana, ko boste delili svoj paket nalepk z drugimi", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Ste prepričani, da želite naložiti svoj paket nalepk?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Naloži", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Ko je paket nalepk enkrat ustvarjen, ga ni več mogoče popravljati oziroma izbrisati.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Ustvarjanje vašega paketa nalepk", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ od $total$ naloženih", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Čestitamo! Ustvarili ste paket nalepk.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Dostopajte do svojega paketa nalepk preko ikone ali pa ga delite s prijatelji prek spodnje povezave.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Da bi ljudje lažje našli URL naslove s paketi nalepk, za katere želite, da so na voljo javnosti, uporabljajte ključnik $hashtag$.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL paketa nalepk", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Namesti", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Ustvari nov paket nalepk", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Poglej si moj novi paket nalepk za Signal! #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Dodana je 1 slika} two {Dodani sta {count,number} sliki} few {Dodane so {count,number} slike} other {Dodanih je {count,number} slik}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animacija trenutno ni podprta", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Spuščena slika je prevelika", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Napaka pri obdelavi slike", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animirane PNG slike morajo biti kvadratne oblike", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animirane slike se morajo vrteti v neskončnost", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animirana PNG slika je prevelika", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animirana PNG slika je premajhna", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Napaka pri nalaganju slik: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Ni mogoče vzpostaviti povezave s strežnikom: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Nalaganje slik ni uspelo zaradi pretečenih poverilnic. Znova odprite spletno stran iz aplikacije Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Povezava je kopirana", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Moja nalepka v svetlem načinu", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Moja nalepka v temnem načinu", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Če želite uporabljati ustvarjalnik paketov nalepk, povežite aplikacijo Signal na svojem telefonu s tisto na računalniku", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Prilagodi odzive", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji vzdevek", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sq-AL/messages.json b/sticker-creator/src/assets/locales/sq-AL/messages.json new file mode 100644 index 000000000..c3616706c --- /dev/null +++ b/sticker-creator/src/assets/locales/sq-AL/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Krijuesi i artit të ngjitëseve" + }, + "index--create-sticker-pack" : { + "message" : "Krijo një paketë të re ngjitësesh" + }, + "SignIn--title" : { + "message" : "Krijo një paketë ngjitësesh", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Ashtu si me çdo gjë tjetër në Signal, ngjitësit janë gjithashtu të koduar. Përdore këtë mjet për të krijuar paketat e tua ngjitëse të personalizuara.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kodi i hyrjes", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Hap Signal Desktop për të filluar", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Na vjen keq, shfletuesi yt nuk mbështetet. Ju lutemi hapeni këtë lidhje në Firefox ose Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Anulo" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Nuk u gjet asnjë emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Kërko për emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Toni i lëkurës $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Fytyra & Njerëz", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Kafshë & Natyra", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Ushqim & Pije", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Udhëtim & Vende", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktivitete", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekte", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Simbole", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flamuj", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Krijuesi i Artit të Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Krijuesi i paketës së ngjitëses së Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Logoja e Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Udhëzime për krijuesin e paketës së ngjitëses së Signal", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Kliko që të shtosh ose lësho një imazh këtu", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Lësho imazhet këtu", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Paketë ngjitësesh", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Paketë ngjitësesh", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Anulo", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopjo", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Tjetri", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Prapa", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Shto ngjitëset e tua", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Hiq imazhin", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Që të shtohet një ngjitës, kliko ose tërhiq/lësho një skedar", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Ngjitëset duhet të jenë në format PNG, APNG ose WebP, me një sfond të tejdukshëm dhe 512x512 piksela. Kufijtë e këshilluar janë 16 piksela.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Shiko kufijtë", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Shto një emoji te çdo ngjitës", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Kjo na lejon t’ju sugjerojmë ngjitësa teksa shkruani mesazhe.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Edhe pak detaje…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titull", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Emërto paketën tënde të ngjitësve", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Autor", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Vendos një emër për të nxjerrë ngjitësen tënde", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Imazhi i kopertinës", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Kjo është figura që do të shfaqet kur të ndash me të tjerë paketën tënde të ngjitësve", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Je i sigurt që dëshiron të ngarkosh paketën tënde të ngjitësve?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Ngarko", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Nuk do të mund të bësh më modifikime apo fshirje pasi të krijosh një paketë ngjitësesh.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Duke krijuar paketën tënde të ngjitësve", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ nga $total$ të ngarkuara", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Përgëzime! Krijove një paketë ngjitësesh.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Hap paketën tënde të re të ngjitësve përmes ikonës së ngjitëses, ose ndaje me shokët e tu duke përdorur lidhjen më poshtë.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Përdor hashtagun $hashtag$ që të ndihmosh personat e tjerë të gjejnë URL-të për cilëndo paketë personale ngjitësish që do të donit ta bëni të përdorshme publikisht.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL-ja e paketës së ngjitëseve", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Instaloje", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Krijo një tjetër paketë ngjitësesh", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Hidhini një sy kësaj pakete të re ngjitësesh që krijova për Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 imazh u shtua} other {{count,number} imazhe u shtuan}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Arti i animuar nuk mbështetet aktualisht", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Imazhi i hedhur është shumë i madh", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Gabim gjatë përpunimit të imazhit", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Imazhet e animuara PNG duhet të jenë katrore", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Imazhet e animuara duhet të qarkullojnë përgjithmonë", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensionet e imazhit të animuar PNG janë shumë të mëdha", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensionet e imazhit të animuar PNG janë shumë të vogla", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Gabim gjatë ngarkimit të imazheve: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Nuk mund të lidhet me serverin: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Ngarkimi i imazheve dështoi për shkak të kredencialeve të skaduara. Të lutem, rihapni sërish faqen e internetit nga Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Lidhja u kopjua", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Ngjitësi im në temë të çelët", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Ngjitësi im në temë të errët", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Ju lutemi konfiguro Signal në telefon dhe desktop për të përdorur Krijuesin e Paketës së Ngjitësve", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Përshtat reagimet", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Nofkat emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sr-YR/messages.json b/sticker-creator/src/assets/locales/sr-YR/messages.json new file mode 100644 index 000000000..3f40ee5fd --- /dev/null +++ b/sticker-creator/src/assets/locales/sr-YR/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Креатор налепница" + }, + "index--create-sticker-pack" : { + "message" : "Направите нови пакет налепница" + }, + "SignIn--title" : { + "message" : "Направите пакет налепница", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Као и све остало у Signal-у, налепнице су такође шифроване. Користите ову алатку да креирате сопствене прилагођене пакете налепница.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Шифра за пријаву", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Отворите Signal Desktop да започнете", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Жао нам је, ваш прегледач није подржан. Отворите линк у Firefox-у или Chrome-у", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Поништи" + }, + "minutesAgo" : { + "message" : "$minutes$ m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Није пронађен ниједан емоџи", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Тражи емоџи", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Нијанса коже $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Смајлији и људи", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Животиње и природа", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Храна и пиће", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Путовање и места", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Активности", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Ствари", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Симболи", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Заставе", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Креатор цртежа у Signal-у", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Креатор пакета налепница у Signal-у", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Логотип Signal-а", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Смернице за креатор пакета налепница", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Кликните да додате слике или их превуците овде", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Превуците слике овде", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Пакет налепница", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Пакет налепница", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Поништи", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Копирај", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Даље", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Назад", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Додајте налепнице", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Уклони слику", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Кликните или превуците/отпустите фајл да додате налепницу", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Налепнице морају бити у формату PNG, APNG или WebP са провидном позадином и 512x512 пиксела. Препоручена маргина је 16 пиксела.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Прикажи маргине", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Додајте емоџи у сваку налепницу", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "То нам омогућава да вам предлажемо налепнице током размене порука.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Још само неколико детаља…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Назив", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Дајте назив пакету налепница", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Аутор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Унесите име под којим желите да пошаљете налепнице", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Насловна слика", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ово је слика која ће се појавити када поделите пакет налепница", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Да ли сте сигурни да желите да отпремите пакет налепница?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Отпреми", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Након креирања пакета налепница више нећете моћи да их мењате или бришете.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Прављење пакета налепница", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ од $total$ је отпремљено", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Честитамо! Направили сте пакет налепница.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Приступите новим налепницама преко иконе налепнице или их поделите са пријатељима помоћу линка у наставку.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Користите хеш ознаку $hashtag$ да би други могли лакше да пронађу URL адресе за било који прилагођени пакет налепница који бисте желели да учините јавно доступним.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL за пакет налепница", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Инсталирај", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Направите још један пакет налепница", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Погледајте мој нови пакет налепница за Signal. #налепиприватност", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Додатих слика: 1} other {Додатих слика: {count,number}}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Анимирани цртежи тренутно нису подржани", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Превучена слика је превелика", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Грешка при обради слике", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анимиране слике у формату PNG морају бити квадратне", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анимиране слике морају да имају трајну анимацију", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Димензије анимиране слике у формату PNG су превелике", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Димензије анимиране слике у формату PNG су премале", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Грешка приликом отпремања слика: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Неуспешно повезивање са сервером: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Отпремање слика није успело због истеклих акредитива. Поново отворите веб-сајт преко Signal Desktop-а.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Линк је копиран", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Моја налепница у светлој теми", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Моја налепница у тамној теми", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Подесите Signal на телефону и рачунару да бисте користили креатор пакета налепница", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Емоџи", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Прилагодите реакције", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Назив емоџија", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sv/messages.json b/sticker-creator/src/assets/locales/sv/messages.json new file mode 100644 index 000000000..ae2e4d6cb --- /dev/null +++ b/sticker-creator/src/assets/locales/sv/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Skapare för klistermärken" + }, + "index--create-sticker-pack" : { + "message" : "Skapa nytt klistermärkespaket" + }, + "SignIn--title" : { + "message" : "Skapa ett klistermärkespaket", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Precis som med allt annat i Signal så är även klistermärken krypterade. Använd det här verktyget för att skapa dina egna anpassade klistermärkespaket.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Inloggningskod", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Öppna Signal Desktop för att börja", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Din webbläsare stöds inte. Öppna den här länken i Firefox eller Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Avbryt" + }, + "minutesAgo" : { + "message" : "$minutes$ min", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Inga emojis hittades", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Sök emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Hudton $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys och människor", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Djur och natur", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Mat och dryck", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Resor och platser", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Aktiviteter", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objekt", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symboler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flaggor", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Skapare för Signal-konst", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Skapare för Signal-klistermärkespaket", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal-logotyp", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Riktlinjer för skapare för klistermärkespaket", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Klicka för att lägga till eller släpp bilder här", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Släpp bilder här", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Klistermärkespaket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Klistermärkespaket", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Avbryt", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopiera", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Nästa", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Tillbaka", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Lägg till dina klistermärken", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Ta bort bild", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Klicka eller dra/släpp en fil för att lägga till ett klistermärke", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Klistermärken måste vara i PNG-, APNG- eller WebP-format med en transparent bakgrund och 512x512 pixlar. Rekommenderad marginal är 16 pixlar.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Visa marginaler", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Lägg till en emoji till varje klistermärke", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Detta gör att vi kan föreslå klistermärken till dig när du skickar meddelanden.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Bara några detaljer till …", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Titel", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Namnge ditt klistermärkespaket", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Skapare", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Ange ett skaparnamn för dina klistermärken", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Omslagsbild", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Det här är bilden som kommer att visas när du delar ditt klistermärkespaket", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Är du säker på att du vill ladda upp ditt klistermärkespaket?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Ladda upp", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Du kommer inte längre att kunna göra ändringar eller ta bort efter att ha skapat ett klistermärkespaket.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Skapar ditt klistermärkespaket", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ av $total$ uppladdade", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Grattis! Du skapade ett klistermärkespaket.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Få åtkomst till dina nya klistermärken via klistermärkesikonen, eller dela med dina vänner med hjälp av länken nedan.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Använd hashtaggen $hashtag$ för att hjälpa andra att hitta webbadresserna för alla anpassade klistermärkespaket som du vill göra offentligt tillgängliga.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Webbadress för klistermärkesspaket", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Installera", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Skapa ett annat klistermärkespaket", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Kolla in det här nya klistermärkespaketet jag skapade för Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 bild tillagd} other {{count,number} bilder tillagda}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animerad konst stöds för närvarande inte", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Den släppta bilden är för stor", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Fel vid bearbetning av bild", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animerade PNG-bilder måste vara fyrkantiga", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animerade bilder måste gå i evig loop", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Dimensioner på animerad PNG-bild är för stora", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Dimensioner på animerad PNG-bild är för små", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Fel vid uppladdning av bilder: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Kan inte ansluta till servern: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Det gick inte att ladda upp bilder på grund av utgångna inloggningsuppgifter. Öppna webbplatsen från Signal Desktop igen.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Länken kopierades", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Mitt klistermärke i ljust tema", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Mitt klistermärke i mörkt tema", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Ställ in Signal på din telefon och ditt skrivbord för att använda skaparen för klistermärkespaket", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Anpassa reaktioner", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji-alias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/sw/messages.json b/sticker-creator/src/assets/locales/sw/messages.json new file mode 100644 index 000000000..b217a3b03 --- /dev/null +++ b/sticker-creator/src/assets/locales/sw/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Kitengeneza Sanaa za Vibandiko" + }, + "index--create-sticker-pack" : { + "message" : "Tengeneza pakiti mpya ya vibandiko" + }, + "SignIn--title" : { + "message" : "Tengeneza Pakiti ya Vibandiko", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Kama ilivyo kwa kila kitu kwenye Signal, vibandiko vimesimbwa pia. Tumia zana hii kutengeneza vibandiko vyako vya kipekee.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Kodi ya Kuingia", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Fungua Signal Desktop ili Kuanza", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Pole, kivinjari chako hakifunguki. Tafadhali fungua kiungo hiki katika Firefox au Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Ghairi" + }, + "minutesAgo" : { + "message" : "Dakika $minutes$", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Hakuna emoji iliyopatikana", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Tafuta emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Rangi ya ngozi $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys & Watu", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Smileys & Mazingira Asili", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Chakula & Vinywaji", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Usafiri & Maeneo", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Shughuli", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Vitu", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Ishara", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bendera", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Kitengeneza Sanaa cha Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Kitengeneza Pakiti ya Vibandiko vya Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Nembo ya Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Miongozo ya Kitengeneza Pakiti za Vibandiko", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Bofya ili kuongeza au kushusha picha", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Shusha picha hapa", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Pakiti ya vibandiko", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Pakiti ya vibandiko", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Ghairi", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Nakili", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Ifuatayo", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Rudi nyuma", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Ongeza vibandiko vyako", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Ondoa picha", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Bonyeza au vuruta/shusha faili ili kuongeza kibandiko", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Vibandiko ni lazima viwe katika muundo wa PNG, APNG, au WebP na viwe na mandhari ya nyuma iliyo wazi na pikseli 512x512. Ukingo unaopendekezwa ni 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Tazama kingo", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Ongeza emoji moja kwa kila kibandiko", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Hii inatuwezesha kupendekeza vibandiko kwako ukiwa unatuma jumbe.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Maelezo machache tu zaidi...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Kichwa cha Habari", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Ipe jina pakiti yako ya vibandiko", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Mwandishi", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Ingiza jina utakalotumia kuwasilisha vibandiko vyako", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Picha ya Juu", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Hii ni picha itakayojitokeza pale unaposhirikisha wengine pakiti yako ya vibandiko", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Una hakika unataka kupakia pakiti yako ya vibandiko?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Pakia", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Hutoweza tena kuhariri ama kufuta baada ya kutengeneza pakiti ya vibandiko.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Inabuni pakiti yako ya vibandiko", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ ya $total$ imepakiwa", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Kongole! Umebuni pakiti ya vibandiko.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Fikia vibandiko vyako vipya kupitia ikoni ya vibandiko, ama ushirikishe marafiki ukitumia kiungo kifuatacho.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Tumia hashtag ya $hashtag$ ili kusaidia wengine kupata URL za pakiti pekee za vibandiko ambazo ungependa zipatikane kwa kila mtu.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL ya Pakiti ya Vibandiko", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Simika", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Buni pakiti nyingine ya vibandiko", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Tazama pakiti hii mpya ya vibandiko vya Signal niliyobuni. #fanyafaraghainate", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Picha 1 imeongezwa} other {Picha {count,number} zimeongezwa}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Sanaa za vikatuni haifanyi kazi kwa sasa", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Picha iliyoshushwa ni kubwa mno", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Hitilafu katika kuchakata picha", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Picha za vikatuni za PNG ni lazima ziwe umbo la mraba", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Picha za vikatuni ni lazima vijirudie milele", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Vipimo vya Picha za vikatuni za PNG ni vikubwa sana", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Vipimo vya Picha za vikatuni za PNG vidogo sana", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Hitilafu wakati wa kupakia picha: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Haiwezekani kuunganika katika seva: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Imeshindikana kupakia kwa sababu ya vigezo vilivyokwisha muda. Tafadhali fungua tena tovuti kutokea Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Kiungo kimenakiliwa", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Kibandiko changu kwenye mandhari nyeupe", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Kibandiko changu kwenye mandhari nyeusi", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Tafadhali weka Signal kwenye simu yako na kwenye kompyuta ya mezani ili utumie Kitengeneza Pakiti cha Vibandiko vya Signal", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Badilisha majibu yakufae", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Alias ya emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ta-IN/messages.json b/sticker-creator/src/assets/locales/ta-IN/messages.json new file mode 100644 index 000000000..b4d5cfa09 --- /dev/null +++ b/sticker-creator/src/assets/locales/ta-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ஸ்டிக்கர் ஆர்ட் கிரியேட்டர்" + }, + "index--create-sticker-pack" : { + "message" : "புதிய ஸ்டிக்கர் பேக்கை உருவாக்கவும்" + }, + "SignIn--title" : { + "message" : "ஸ்டிக்கர் தொகுப்பை உருவாக்கவும்", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal இல் உள்ள எல்லாவற்றையும் போலவே, ஸ்டிக்கர்களும் குறியாக்கம் செய்யப்பட்டுள்ளன. உங்களுக்கான தனிப்பயன் ஸ்டிக்கர் தொகுப்புகளை உருவாக்க இந்தக் கருவியைப் பயன்படுத்தவும்.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "உள்நுழைவு குறியீடு", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "தொடங்குவதற்கு Signal டெஸ்க்டாப்பைத் திறக்கவும்", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "மன்னிக்கவும், உங்கள் பிரவுசர் ஆதரிக்கப்படவில்லை. இந்த இணைப்பை Firefox அல்லது Chrome இல் திறக்கவும்", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ரத்துசெய்" + }, + "minutesAgo" : { + "message" : "$minutes$நி", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ஈமோஜிகள் எதுவும் கிடைக்கவில்லை", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ஈமோஜியைத் தேடுங்கள்", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "ஸ்கின் டோன் $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "ஸ்மைலிகள் மற்றும் மக்கள்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "விலங்குகள் & இயற்கை", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "உணவு & பானம்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "பயணம் & இடங்கள்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "செயல்பாடுகள்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "பொருட்கள்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "சின்னங்கள்", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "கொடிகள்", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal ஆர்ட் கிரியேட்டர்", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal ஸ்டிக்கர் பேக் கிரியேட்டர்", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal லோகோ", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "ஸ்டிக்கர் பேக் கிரியேட்டர் வழிகாட்டுதல்கள்", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "படங்களை சேர்க்க அல்லது வைக்க இங்கே கிளிக் செய்யவும்", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "படங்களை இங்கே விடுங்கள்", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "ஸ்டிக்கர் பேக்", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "ஸ்டிக்கர் பேக்", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ரத்துசெய்", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "நகலெடு", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "அடுத்தது", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "முந்தையது", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "உங்கள் ஸ்டிக்கர்களைச் சேர்க்கவும்", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "படத்தை அகற்று", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "ஸ்டிக்கரைச் சேர்க்க கோப்பைக் கிளிக் செய்யவும் அல்லது இழுத்து/விடவும்", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "ஸ்டிக்கர்கள் வெளிப்படையான பின்னணி மற்றும் 512x512 பிக்சல்கள் கொண்ட PNG, APNG அல்லது WebP வடிவத்தில் இருக்க வேண்டும். பரிந்துரைக்கப்பட்ட விளிம்பு 16px ஆகும்.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "விளிம்புகளைக் காண்க", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ஒவ்வொரு ஸ்டிக்கருக்கும் ஒரு ஈமோஜியைச் சேர்க்கவும்", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "நீங்கள் மெசேஜ் அனுப்பும்போது உங்களுக்கு ஸ்டிக்கர்களைப் பரிந்துரைக்க இது அனுமதிக்கிறது.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "இன்னும் சில விவரங்கள்...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "தலைப்பு", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "உங்கள் ஸ்டிக்கர் பேக்கிற்குப் பெயரிடவும்", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "உருவாக்கியவர்", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "உங்கள் ஸ்டிக்கர்களைச் சமர்ப்பிக்க ஒரு பெயரை உள்ளிடவும்", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "வெளிப்புற அட்டை படம்", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "உங்கள் ஸ்டிக்கர் பேக்கைப் பகிரும்போது காண்பிக்கப்படும் படம் இது", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "உங்கள் ஸ்டிக்கர் பேக்கைப் பதிவேற்ற விரும்புகிறீர்களா?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "பதிவேற்று", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "ஸ்டிக்கர் பேக்கை உருவாக்கிய பிறகு நீங்கள் திருத்தங்களைச் செய்யவோ அழிக்கவோ முடியாது.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "உங்கள் ஸ்டிக்கர் பேக்கை உருவாக்குகிறது", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ / $total$ பதிவேற்றப்பட்டது", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "வாழ்த்துகள்! நீங்கள் ஒரு ஸ்டிக்கர் பேக்கை உருவாக்கியுள்ளீர்கள்.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "உங்கள் புதிய ஸ்டிக்கர்களை, ஸ்டிக்கர் ஐகான் மூலம் அணுகலாம் அல்லது கீழேயுள்ள இணைப்பைப் பயன்படுத்தி உங்கள் நண்பர்களுடன் பகிர்ந்து கொள்ளுங்கள்.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "நீங்கள் பொதுவில் அணுகக்கூடிய தனிப்பயன் ஸ்டிக்கர் பேக்குகளுக்கான URLகளை பிறர் கண்டறிய உதவ, $hashtag$ என்ற ஹேஷ்டேக்கைப் பயன்படுத்தவும்.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "ஸ்டிக்கர் பேக் URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "நிறுவு", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "மற்றொரு ஸ்டிக்கர் பேக்கை உருவாக்கவும்", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signalக்காக நான் உருவாக்கிய இந்த புதிய ஸ்டிக்கர் பேக்கைப் பாருங்கள். #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 படம் சேர்க்கப்பட்டது} other {{count,number} படங்கள் சேர்க்கப்பட்டன}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "அனிமேஷன் செய்யப்பட்ட ஆர்ட் தற்போது ஆதரிக்கப்படவில்லை", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "வைக்கப்பட்ட படம் மிகவும் பெரிதாக உள்ளது", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "படத்தை செயலாக்குவதில் பிழை", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "அனிமேஷன் செய்யப்பட்ட PNG படங்கள் சதுரமாக இருக்க வேண்டும்", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "அனிமேஷன் செய்யப்பட்ட படங்கள் எப்போதும் லூப் செய்யப்பட வேண்டும்", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "அனிமேஷன் செய்யப்பட்ட PNG படங்களின் பரிமாணங்கள் மிகவும் பெரிதாக உள்ளன", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "அனிமேஷன் செய்யப்பட்ட PNG படங்களின் பரிமாணங்கள் மிகவும் சிறிதாக உள்ளன", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "படங்களைப் பதிவேற்றுவதில் பிழை: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "சர்வருடன் இணைக்க முடியவில்லை: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "காலாவதியான நம்பகச்சான்றுகள் காரணமாக படங்களை பதிவேற்ற முடியவில்லை. சிக்னல் டெஸ்க்டாப்பில் இருந்து இணையதளத்தை மீண்டும் திறக்கவும்.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "இணைப்பு நகலெடுக்கப்பட்டது", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "லைட் தீம் காட்சியில் எனது ஸ்டிக்கர்", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "டார்க் தீம் காட்சியில் எனது ஸ்டிக்கர்", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "ஸ்டிக்கர் பேக் கிரியேட்டரைப் பயன்படுத்த உங்கள் ஃபோன் மற்றும் டெஸ்க்டாப்பில் Signalஐ அமைக்கவும்", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ஈமோஜி", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "எதிர்வினைகளைத் தனிப்பயனாக்குங்கள்", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ஈமோஜி மாற்றுப்பெயர்", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/te-IN/messages.json b/sticker-creator/src/assets/locales/te-IN/messages.json new file mode 100644 index 000000000..5d71b22d0 --- /dev/null +++ b/sticker-creator/src/assets/locales/te-IN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "స్టిక్కర్ ఆర్ట్ క్రియేటర్" + }, + "index--create-sticker-pack" : { + "message" : "కొత్త స్టిక్కర్ ప్యాక్‌ను సృష్టించండి" + }, + "SignIn--title" : { + "message" : "స్టిక్కర్ ప్యాక్ సృష్టించండి", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal లో మిగతావాటి వలే, స్టిక్కర్‌లు కూడా ఎన్‌క్రిప్ట్ చేయబడ్డాయి. మీ స్వంత అనుకూల స్టిక్కర్ ప్యాక్‌లను సృష్టించడానికి ఈ సాధనాన్ని ఉపయోగించండి.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "సైన్ ఇన్ కోడ్", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "ప్రారంభించడానికి Signal Desktop తెరవండి", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "క్షమించండి, మీ బ్రౌజర్‌కు మద్దతు ఇవ్వబడలేదు. దయచేసి ఈ లింక్‌ను Firefox లేదా Chrome లో తెరవండి", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "రద్దు చేయండి" + }, + "minutesAgo" : { + "message" : "$minutes$ ని", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ఏ ఎమోజీ కనుగొనబడలేదు", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ఎమోజీని వెతకండి", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "స్కిన్ టోన్ $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "స్మైలీస్ & ప్రజలు", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "జంతువులు & ప్రకృతి", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "ఆహారం & పానీయం", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ప్రయాణం & ప్రదేశాలు", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "కార్యకలాపాలు", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "వస్తువులు", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "చిహ్నాలు", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "జెండాలు", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal ఆర్ట్ క్రియేటర్", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal స్టిక్కర్ ప్యాక్ క్రియేటర్", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal లోగో", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "స్టిక్కర్ ప్యాక్ క్రియేటర్ మార్గదర్శకాలు", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "చిత్రాలను ఇక్కడ జోడించడానికి లేదా డ్రాప్ చేయడానికి క్లిక్ చేయండి", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "చిత్రాలను ఇక్కడ డ్రాప్ చేయండి", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "స్టిక్కర్ ప్యాక్", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "స్టిక్కర్ ప్యాక్", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "రద్దు చేయండి", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "నకలు", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "తరువాత", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "వెనక్కు", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "మీ స్టిక్కర్‌లను జోడించండి", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "చిత్రాన్ని తొలగించండి", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "స్టిక్కర్ జోడించడానికి ఒక ఫైల్‌ను క్లిక్ చేయండి లేదా డ్రాగ్/డ్రాప్ చేయండి", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "స్టిక్కర్‌లు పారదర్శక బ్యాక్‌గ్రౌండ్ మరియు 512x512 పిక్సెల్‌లతో PNG, APNG లేదా WebP ఫార్మాట్‌లో తప్పనిసరిగా ఉండాలి. సిఫార్సు చేసిన మార్జిన్ 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "మార్జిన్‌లను వీక్షించండి", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ప్రతి స్టిక్కర్‌కు ఎమోజీని జోడించండి", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "మీరు సందేశం పంపేటప్పుడు మీకు స్టిక్కర్‌లను సూచించడానికి ఇది మమ్మల్ని అనుమతిస్తుంది.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "కేవలం మరికొన్ని వివరాలు...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "శీర్షిక", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "మీ స్టిక్కర్ ప్యాక్‌కు పేరు పెట్టండి", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "రచయిత", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "కింద మీ స్టిక్కర్‌లను సమర్పించడానికి పేరును నమోదు చేయండి", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "కవర్ చిత్రం", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "మీరు మీ స్టిక్కర్ ప్యాక్‌ను పంచుకున్నప్పుడు చూపించబడే చిత్రం ఇది", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "మీరు ఖచ్చితంగా మీ స్టిక్కర్ ప్యాక్‌ను అప్‌లోడ్ చేయాలనుకుంటున్నారా?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "అప్‌లోడ్ చేయండి", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "స్టిక్కర్ ప్యాక్‌ను సృష్టించిన తర్వాత మీరు ఇకపై సవరణలు చేయలేరు లేదా తొలగించలేరు.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "మీ స్టిక్కర్ ప్యాక్‌ను సృష్టిస్తోంది", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ లో $count$ అప్‌లోడ్ చేయబడింది", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "అభినందనలు! మీరు స్టిక్కర్ ప్యాక్‌ను సృష్టించారు.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "స్టిక్కర్ ఐకాన్ ద్వారా మీ కొత్త స్టిక్కర్‌లను యాక్సెస్ చేసుకోండి లేదా క్రింది లింక్‌ను ఉపయోగించి మీ స్నేహితులతో పంచుకోండి.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "మీరు బహిరంగంగా యాక్సెస్ చేసుకునేలా చేయాలని కోరుకునే ఏదైనా అనుకూల స్టిక్కర్ ప్యాక్‌ల కొరకు URLలను కనుగొనడంలో ఇతరులకు సహాయపడటానికి $hashtag$ అనే హ్యాష్‌ట్యాగ్‌ను ఉపయోగించండి.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "స్టిక్కర్ ప్యాక్ URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ఇన్‌స్టాల్ చేయండి", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "మరొక స్టిక్కర్ ప్యాక్‌ను సృష్టించండి", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal కోసం నేను సృష్టించిన ఈ కొత్త స్టిక్కర్ ప్యాక్‌ను చూడండి. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 చిత్రం జోడించబడింది} other {{count,number} చిత్రాలు జోడించబడ్డాయి}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "యానిమేటెడ్ ఆర్ట్‌కు ప్రస్తుతం మద్దతు ఇవ్వబడలేదు", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "డ్రాప్ చేయబడిన చిత్రం చాలా పెద్దదిగా ఉంది", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "చిత్రాన్ని ప్రాసెస్ చేయడంలో లోపం", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "యానిమేటెడ్ PNG చిత్రాలు తప్పనిసరిగా చతురస్రాకారంలో ఉండాలి", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "యానిమేటెడ్ చిత్రాలు ఎప్పటికీ తప్పనిసరిగా లూప్ చేయాలి", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "యానిమేటెడ్ PNG చిత్రం కొలతలు చాలా పెద్దవిగా ఉన్నాయి", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "యానిమేటెడ్ PNG చిత్రం కొలతలు చాలా చిన్నవిగా ఉన్నాయి", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "చిత్రాలను అప్‌లోడ్ చేయడంలో లోపం: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "సర్వర్‌కు కనెక్ట్ చేయలేము: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "క్రెడెన్షియల్స్ గడువు తీరడం వల్ల చిత్రాలను అప్‌లోడ్ చేయడం విఫలమైంది. దయచేసి Signal Desktop నుండి వెబ్‌సైట్‌ను మళ్లీ తెరవండి.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "లింక్ కాపీ చేయబడింది", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "తేలికపాటి థీమ్‌లో నా స్టిక్కర్", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "డార్క్ థీమ్‌లో నా స్టిక్కర్", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "స్టిక్కర్ ప్యాక్ క్రియేటర్‌ను ఉపయోగించడానికి దయచేసి మీ ఫోన్ మరియు డెస్క్‌టాప్‌లో Signal ను సెటప్ చేయండి", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ఎమోజీ", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ప్రతిస్పందనలను అనుకూలపరచండి", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ఎమోజీ అలియాస్", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/th/messages.json b/sticker-creator/src/assets/locales/th/messages.json new file mode 100644 index 000000000..341432cce --- /dev/null +++ b/sticker-creator/src/assets/locales/th/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "ศูนย์สร้างสรรค์ Sticker Art" + }, + "index--create-sticker-pack" : { + "message" : "สร้างชุดสติกเกอร์ใหม่" + }, + "SignIn--title" : { + "message" : "สร้างสรรค์ชุดสติกเกอร์", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "ก็เหมือนกับทุกอย่างบน Signal สติกเกอร์ของเรามีการเข้ารหัสด้วยเช่นกัน ใช้เครื่องมือนี้เพื่อสร้างชุดสติกเกอร์ของคุณเองได้เลย", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "รหัสลงชื่อเข้าใช้", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "เปิด Signal สำหรับเดสก์ท็อปเพื่อเริ่มต้น", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "ขออภัย เบราว์เซอร์ของคุณไม่รองรับบริการนี้ กรุณาเปิดลิงก์นี้ใน Firefox หรือ Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ยกเลิก" + }, + "minutesAgo" : { + "message" : "$minutes$ นาที", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "ไม่พบอีโมจิ", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ค้นหาอีโมจิ", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "สีผิว $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "หน้ายิ้มและผู้คน", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "สัตว์และธรรมชาติ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "อาหารและเครื่องดื่ม", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "เดินทางและสถานที่", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "กิจกรรม", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "วัตถุ", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "สัญลักษณ์", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "ธง", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "ศูนย์สร้างสรรค์ Signal Art", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "ศูนย์สร้างสรรค์ชุดสติกเกอร์ Signal (Sticker Pack Creator)", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "โลโก้ Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "คำแนะนำสำหรับผู้สร้างชุดสติกเกอร์", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "คลิกเพื่อเพิ่ม หรือวางภาพลงตรงนี้", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "วางภาพลงตรงนี้", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "ชุดสติกเกอร์", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "ชุดสติกเกอร์", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ยกเลิก", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "คัดลอก", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "ถัดไป", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "กลับ", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "เพิ่มสติกเกอร์ของคุณ", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "ลบรูปภาพ", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "คลิกหรือใช้การลากแล้ววางไฟล์เพื่อเพิ่มสติกเกอร์", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "สติกเกอร์ต้องอยู่ในรูปแบบ PNG, APNG หรือ WebP ที่มีพื้นหลังโปร่งใส และมีขนาด 512x512 พิกเซล ระยะเว้นขอบที่แนะนำคือ 16 พิกเซล", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "ดูระยะเว้นขอบ", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "เพิ่มอีโมจิในสติกเกอร์แต่ละอัน", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "นี่จะอนุญาตให้เราแนะนำสติกเกอร์ในระหว่างที่คุณพิมพ์ข้อความได้", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "เพิ่มรายละเอียดอีกสักเล็กน้อย…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ชื่อ", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "ตั้งชื่อชุดสติกเกอร์ของคุณ", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "ผู้สร้าง", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "ระบุชื่อผู้สร้างที่จะปรากฏในสติกเกอร์ของคุณ", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "ภาพปก", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "นี่จะเป็นภาพที่แสดงตอนที่คุณแชร์ชุดสติกเกอร์", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "แน่ใจหรือไม่ว่าต้องการอัปโหลดชุดสติกเกอร์ของคุณ", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "อัปโหลด", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "คุณจะไม่สามารถแก้ไขหรือลบอะไรได้อีกหลังสร้างชุดสติกเกอร์แล้ว", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "กำลังสร้างชุดสติกเกอร์ของคุณ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "อัปโหลดแล้ว $count$ จาก $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "ยินดีด้วย! คุณสร้างชุดสติกเกอร์แล้ว", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "เข้าถึงสติกเกอร์ใหม่ของคุณผ่านไอคอนสติกเกอร์ หรือแชร์ให้เพื่อนโดยใช้ลิงก์ด้านล่างนี้", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "ใช้แฮชแท็ก $hashtag$ เพื่อให้ผู้ใช้คนอื่นๆ เจอ URL ของชุดสติกเกอร์ใดก็ตามที่คุณอยากให้สาธารณะเข้าถึงได้", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL ชุดสติกเกอร์", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ติดตั้ง", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "สร้างชุดสติกเกอร์อีกชุด", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "ลองดูชุดสติกเกอร์ใหม่ที่ฉันสร้างสรรค์ให้ Signal สิ! #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {เพิ่มแล้ว {count,number} ภาพ}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ยังไม่รองรับภาพเคลื่อนไหว", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "ภาพที่วางมามีขนาดใหญ่เกินไป", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "พบข้อผิดพลาดระหว่างประมวลผลรูปภาพ", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "ภาพเคลื่อนไหวไฟล์ PNG ต้องเป็นสี่เหลี่ยมจัตุรัส", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "ภาพเคลื่อนไหวต้องวนไม่รู้จบ", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "ภาพเคลื่อนไหวไฟล์ PNG มีขนาดใหญ่เกินไป", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "ภาพเคลื่อนไหวไฟล์ PNG มีขนาดเล็กเกินไป", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "พบข้อผิดพลาดระหว่างอัปโหลดรูปภาพ: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ได้: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "อัปโหลดรูปภาพไม่สำเร็จเนื่องจากหมดเวลาในระบบแล้ว กรุณาเปิดเว็บไซต์นี้จาก Signal สำหรับเดส์กท็อปอีกครั้ง", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "คัดลอกลิงก์แล้ว", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "สติกเกอร์ของฉันในธีมสว่าง", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "สติกเกอร์ของฉันในธีมมืด", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "กรุณาติดตั้ง Signal บนมือถือและเดสก์ท็อป เพื่อใช้งานศูนย์สร้างสรรค์ชุดสติกเกอร์ (Sticker Pack Creator)", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "อีโมจิ", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ปรับแต่งการแสดงความรู้สึก", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "นามแฝงของอีโมจิ", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/tl-PH/messages.json b/sticker-creator/src/assets/locales/tl-PH/messages.json new file mode 100644 index 000000000..852de96ca --- /dev/null +++ b/sticker-creator/src/assets/locales/tl-PH/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Sticker Art Creator" + }, + "index--create-sticker-pack" : { + "message" : "Gumawa ng bagong sticker pack" + }, + "SignIn--title" : { + "message" : "Gumawa ng Sticker Pack", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Gaya ng lahat ng bagay sa Signal, encrypted rin ang stickers. Gamitin ang tool na ito para gumawa ng sarili mong sticker packs.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Sign In Code", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Buksan ang Signal Desktop para Magsimula", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Paumanhin, pero hindi suportado ang browser na ginagamit mo. Paki buksan ang link na ito sa Firefox o Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "I-cancel" + }, + "minutesAgo" : { + "message" : "$minutes$m", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Walang nahanap na emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Mag-search ng emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Skin tone $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Smileys & People", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Animals & Nature", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Food & Drink", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Travel & Places", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Activities", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Objects", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Symbols", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Flags", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Art Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal Sticker Pack Creator", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal Logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Sticker Pack Creator Guidelines", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Mag-click o mag-drop ng images dito", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Mag-drop ng images dito", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Sticker pack", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Sticker pack", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "I-cancel", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopyahin", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Susunod", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Bumalik", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Mag-add ng iyong stickers", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Tanggalin ang image", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Mag-click o mag-drop ng file para mag-add ng sticker", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Ang stickers ay dapat nasa PNG, APNG, o WebP format na may transparent background at 512x512 pixels. 16px ang recommended margin.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Ipakita ang margins", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Mag-add ng emoji sa bawat sticker", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Nakatutulong ito sa amin para makapag-suggest ng stickers habang nagta-type ka ng message.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Kaunting detalye na lang…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Title", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Bigyan ng pangalan ang iyong sticker pack", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Author", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Ilagay ang pangalan mo para ma-submit ang iyong stickers", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Cover image", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Ito ang image na ipapakita kapag shinare mo ang iyong sticker pack", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Sigurado ka bang gusto mong i-upload ang iyong sticker pack?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "I-upload", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Hindi mo na pwedeng i-edit o i-delete ang isang sticker pack kapag nagawa mo na ito.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Ginagawa ang sticker pack mo", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ ng $total$ ang na-upload", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Congratulations! Nakagawa ka na ng sticker pack.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "I-access sa sticker icon ang iyong stickers, o i-share ito sa friends mo gamit ang link sa baba.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Gamitin ang hashtag $hashtag$ para tulungan ang ibang mahanap ang URLs ng custom sticker packs na gusto mong maging publicly accessible.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Sticker Pack URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "I-install", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Gumawa ng panibagong sticker pack", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "I-check out ang bagong sticker pack na ginawa ko para sa Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 image ang nadagdag} other {{count,number} images ang nadagdag}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Hindi suportado sa ngayon ang animated art", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Masyadong malaki ang inilagay na image", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Nagka-error sa pag-process ng image", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Parisukat o square dapat ang hugis ng animated PNG images", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Dapat palaging naka-loop ang animated images", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Masyadong malaki ang image dimensions ng animated PNG", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Masyadong maliit ang image dimensions ng animated PNG", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Nagka-error sa pag-upload ng images: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Hindi maka-connect sa server: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Hindi ma-upload ang images dahil sa expired credentials. Buksan ulit ang website sa Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Nakopya na ang link", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Preview ng sticker ko sa light theme", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Preview ng sticker ko sa dark theme", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "I-set up ang Signal sa iyong phone at desktop para magamit ang Sticker Pack Creator", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "I-customize ang reactions", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji alias", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/tr/messages.json b/sticker-creator/src/assets/locales/tr/messages.json new file mode 100644 index 000000000..a0508c43f --- /dev/null +++ b/sticker-creator/src/assets/locales/tr/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Çıkartma Görseli Oluşturucu" + }, + "index--create-sticker-pack" : { + "message" : "Yeni çıkartma paketi oluştur" + }, + "SignIn--title" : { + "message" : "Çıkartma Paketi Oluştur", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal'deki diğer her şeyde olduğu gibi çıkartmalar da şifrelidir. Kendi özel çıkartma paketlerini oluşturmak için bu aracı kullan.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Giriş Kodu", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Başlamak için Signal Desktop'ı aç", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Üzgünüz, tarayıcın desteklenmiyor. Lütfen bu bağlantıyı Firefox veya Chrome'da aç", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "İptal" + }, + "minutesAgo" : { + "message" : "$minutes$ d", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Emoji bulunamadı", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Emoji ara", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Ten rengi $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Gülenyüzler ve Kişiler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Hayvanlar ve Doğa", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Yeme İçme", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Seyahat ve Mekânlar", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Etkinlikler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Nesneler", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Semboller", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Bayraklar", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal Görsel Oluşturucu", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal Çıkartma Paketi Oluşturucu", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal Logosu", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Çıkartma Paketi Oluşturucu Kılavuzu", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Görüntü eklemek için buraya tıkla veya sürükle", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Görselleri buraya bırak", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Çıkartma paketi", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Çıkartma paketi", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "İptal", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Kopyala", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "İleri", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Geri", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Çıkartmalarını ekle", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Görseli kaldır", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Çıkartma eklemek için tıkla veya dosyayı sürükle/bırak", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Çıkartmalar şeffaf bir arka plana ve 512x512 piksele sahip PNG, APNG veya WebP biçiminde olmalıdır. Önerilen kenar boşluğu 16 pikseldir.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Kenar boşluklarını görüntüle", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Her çıkartmaya bir emoji ekle", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Bu özellik sen mesajlaşırken sana çıkartma önerebilmemizi sağlar.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Yalnızca birkaç detay daha...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Başlık", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Çıkartma paketinin adı", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Yaratıcı", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Çıkartmanın yaratıcısı için bir ad gir", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Kapak görseli", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Çıkartma paketini paylaştığında bu görsel görüntülenecektir", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Çıkartma paketini yüklemek istediğinden emin misin?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Yükle", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Çıkartma paketini oluşturduktan sonra düzenleme yapamayacak veya silemeyeceksin.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Çıkartma paketin oluşturuluyor", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$/$total$ yüklendi", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Tebrikler! Bir çıkartma paketi oluşturdun.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Yeni çıkartmalarına çıkartma simgesinden ulaşabilir veya aşağıdaki bağlantıyı kullanarak arkadaşlarınla paylaşabilirsin.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Herkes tarafından erişilebilir olmasını istediğin özel çıkartma paketlerinin bağlantı adreslerinin diğer kişiler tarafından bulunabilmesini kolaylaştırmak için $hashtag$ konu etiketini kullan.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Çıkartma Paketi Bağlantı Adresi", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Yükle", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Farklı bir çıkartma paketi oluştur", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Signal için oluşturduğum bu yeni çıkartma paketine göz at. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 görsel eklendi} other {{count,number} görsel eklendi}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Animasyonlu görsel şu anda desteklenmiyor", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Bırakılan görüntü çok büyük", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Görüntü işlenirken hata oluştu", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Animasyonlu PNG resimleri kare şeklinde olmalıdır", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Animasyonlu resimler sonsuz döngüde olmalıdır", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Animasyonlu PNG resim boyutları çok büyük", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Animasyonlu PNG resim boyutları çok küçük", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Görseller yüklenirken hata oluştu: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Sunucuya bağlanılamıyor: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Kimlik bilgilerinin süresi dolduğundan görseller yüklenemedi. Lütfen web sitesini Signal Desktop'tan yeniden aç.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Bağlantı kopyalandı", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Aydınlık temada çıkartma görüntüsü", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Karanlık temada çıkartma görüntüsü", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Çıkartma Paketi Oluşturucu'yu kullanmak için lütfen Signal'i telefonunda ve bilgisayarında kur", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Tepkileri özelleştir", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji takma adı", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ug/messages.json b/sticker-creator/src/assets/locales/ug/messages.json new file mode 100644 index 000000000..d88ded178 --- /dev/null +++ b/sticker-creator/src/assets/locales/ug/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "چاپلاق سەنئەت قۇرغۇچى" + }, + "index--create-sticker-pack" : { + "message" : "يېڭى چاپلاق بوغچىسى قۇرۇش" + }, + "SignIn--title" : { + "message" : "چاپلاق بوغچىسى قۇرۇش", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal دىكى باشقا نەرسىلەرگە ئوخشاش چاپلاقلارمۇ مەخپىيلەشتۈرۈلگەن. بۇ قورال ئارقىلىق ئۆزىڭىزگە خاس چاپلاق بوغچىسىنى قۇرالايسىز.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "تىزىملاپ كىرىش كودى", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Signal ئۈستەليۈزى نەشرىنى ئېچىپ باشلاڭ", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "كەچۈرۈڭ، تور كۆرگۈچىڭىز قوللىمايدۇ. بۇ ئۇلىنىشنى Firefox ياكى Chrome دا ئېچىڭ", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "ۋاز كەچ" + }, + "minutesAgo" : { + "message" : "$minutes$ مىنۇت", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "emoji تېپىلمىدى", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "چىراي بەلگە ئىزدە", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "تېرە رەڭگى $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "كۈلۈمسىرەش& كىشىلەر", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "ھايۋاناتلار & تەبىئەت", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "يېمەك-ئىچمەك", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "ساياھەت & يەرلەر", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "پائالىيەت", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "نەرسە", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "بەلگە", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "بايراق", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "چاپلاق سەنئەت قۇرغۇچى", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal چاپلاق بوغچىسى قۇرغۇچى", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal لوگوسى", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "چاپلاق بوغچىسى قۇرغۇچى كۆرسەتمىسى", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "رەسىم قوشۇش ئۈچۈن بۇ يەرنى چېكىڭ ياكى رەسىمنى سۆرەپ كىرىڭ", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "رەسىمنى بۇ يەرگە تاشلاڭ", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "چاپلاق بوغچىسى", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "چاپلاق بوغچىسى", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "ۋاز كەچ", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "كۆچۈر", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "كېيىنكى", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "قايت", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "چاپلاقلىرىمنى قوشىمەن", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "رەسىمنى ئۆچۈرۈش", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "چاپلاققا قوشۇش ئۈچۈن چېكىڭ ياكى ھۆججەتنى تاشلاڭ ياكى سۆرەپ كىرىڭ", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "چاپلاقلار چوقۇم PNG، APNG ياكى WebP فورماتىدا بولۇشى، تەگلىكى سۈزۈك بولۇشى ۋە 512x512 پىكسېل بولۇشى كېرەك. گىرۋەكنىڭ 16px بولۇشى تەۋسىيە قىلىنىدۇ.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "گىرۋەكنى كۆرۈش", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ھەر بىر چاپلاققا بىر emoji قوشۇش", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "شۇنىڭ بىلەن سىز ئۇچۇر يوللاۋاتقاندا سىزگە چاپلاق تەۋسىيە قىلالايمىز.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "يەنە بەزى تەپسىلاتلارنى قوشۇڭ...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "ماۋزۇ", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "چاپلاق بوغچىڭىزغا ئىسىم قويۇڭ", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "يازغۇچى", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "تاپشۇرىدىغان چاپلاقلىرىڭىزغا بىر ئىسىم قويۇڭ", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "مۇقاۋا رەسىم", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "چاپلاق بوغچىڭىزنى ئورتاقلاشقاندا بۇ رەسىم مۇقاۋا بولۇپ كۆرۈنىدۇ", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "چاپلاق بوغچىڭىزنى يۈكلەمسىز؟", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "يۈكلەش", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "چاپلاق بوغچىسى قۇرۇلۇپ بولغاندىن كېيىن ئۇنىڭغا تەھرىرلەش ۋە ئۆچۈرۈش مەشغۇلاتى ئېلىپ بارالمايسىز.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "چاپلاق بوغچىڭىز قۇرۇلۇۋاتىدۇ", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$/$count$ يۈكلەندى", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "مۇبارەك بولسۇن! بىر چاپلاق بوغچىسى قۇردىڭىز.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "چاپلاق سىنبەلگىسى ئارقىلىق يېڭى چاپلاقلىرىڭىزنى كۆرەلەيسىز ياكى تۆۋەندىكى ئۇلانما ئارقىلىق ئۇلارنى دوستلىرىڭىز بىلەن ئورتاقلىشالايسىز.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "خەتكۈچ $hashtag$ ئىشلىتىپ، باشقىلارنىڭ سىز ئاشكارا ئېلان قىلماقچى بولغان خاس چاپلاق بوغچىسىنىڭ URL ئۇلانمىلىرىنى تېپىشىغا ياردەم قىلالايسىز.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "چاپلاق بوغچىسى URL ئۇلانمىسى", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "ئورنات", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "يەنە بىر چاپلاق بوغچىسى قۇرۇش", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "مەن Signal ئۈچۈن قۇرغان بۇ چاپلاق بوغچىسىنى كۆرۈپ بېقىڭ. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} رەسىم قوشۇلدى}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "ھازىرچە كارتون ئۇسلۇبىنى قوللىمايدۇ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "تاشلىغان رەسىم بەك چوڭ", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "رەسىم بىر تەرەپ قىلىشتا خاتالىق كۆرۈلدى", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "كارتون PNG رەسىملىرى چوقۇم تىك تۆتبۇلۇڭ شەكلىدە بولۇشى كېرەك", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "كارتون رەسىملەر چوقۇم توختىماي تەكرار مىدىرلىشى كېرەك", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "كارتون PNG رەسىمنىڭ ئۆلچىمى بەك چوڭ", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "كارتون PNG رەسىمنىڭ ئۆلچىمى بەك كىچىك", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "رەسىم يۈكلەش خاتالىقى: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "مۇلازىمىتېرغا ئۇلىنالمىدى: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "سالاھىيەت ئۇچۇرلىرىنىڭ ۋاقتى ئۆتكەچكە رەسىملەر يۈكلەنمىدى. تور بەتنى Signal ئۈستەليۈزى نەشرىدە قايتا ئېچىڭ.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "ئۇلانما كۆچۈرۈلدى", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "ئوچۇق ئۇسلۇبدىكى چاپلاقلىرىم", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "قاراڭغۇ ئۇسلۇبدىكى چاپلاقلىرىم", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "چاپلاق بوغچىسى قۇرغۇچىنى ئىشلىتىش ئۈچۈن تېلېفونىڭىز ۋە كومپيۇتېرىڭىزغا Signal نى سەپلەڭ", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "چىراي بەلگە", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ئىختىيارىچە ئىنكاس", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Emoji ئىسمى", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/uk-UA/messages.json b/sticker-creator/src/assets/locales/uk-UA/messages.json new file mode 100644 index 000000000..ee5f0ce70 --- /dev/null +++ b/sticker-creator/src/assets/locales/uk-UA/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Художній редактор наліпок" + }, + "index--create-sticker-pack" : { + "message" : "Створити новий набір наліпок" + }, + "SignIn--title" : { + "message" : "Створіть набір наліпок", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Як і решта елементів Signal, наліпки також є зашифрованими. Користуйтеся цим інструментом, щоб створювати власні набори наліпок.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Код входу", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Відкрити Signal для комп'ютера, щоб почати", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Вибачте, ваш браузер не підтримується. Будь ласка, відкрийте це посилання в Firefox чи Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Скасувати" + }, + "minutesAgo" : { + "message" : "$minutes$ хв", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Емодзі не знайдено", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Пошук емодзі", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Відтінок шкіри $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Емограми і люди", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Тварини і природа", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Їжа і напої", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Подорожі й місця", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Активності", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Об'єкти", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Символи", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Прапори", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Художній редактор Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Створення наборів наліпок у Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Логотип Signal", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Рекомендації зі створення наборів наліпок", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Натисніть, щоб додати зображення, або перетягніть їх сюди", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Перетягніть зображення сюди", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Набір наліпок", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Набір наліпок", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Скасувати", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Копіювати", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Далі", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Назад", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Додайте наліпки", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Видалити зображення", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Клацніть тут або перетягніть файл, щоб додати наліпку", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Наліпки повинні бути у форматі PNG, APNG чи WebP із прозорим фоном і розміром 512x512 пікселів. Рекомендований відступ: 16 пкс.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Показати відступ", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Призначте емодзі кожній наліпці", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Так ми зможемо пропонувати вам наліпки, коли ви будете вводити повідомлення.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Ще кілька деталей…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Назва", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Придумайте назву для свого набору", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Автор", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Введіть ім'я, під яким додати наліпки", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Зображення обкладинки", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Це зображення буде показано, коли ви поділитеся набором наліпок", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Ви дійсно хочете завантажити свій набір наліпок?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Завантажити", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Ви не зможете редагувати чи видалити цей набір наліпок після створення.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Створюємо ваш набір наліпок", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ з $total$ завантажено", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Вітаємо! Ви створили набір наліпок.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Отримайте доступ до своїх нових наліпок через значок наліпок або поділіться ними з друзями, використовуючи посилання нижче.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Використовуйте гештег $hashtag$, щоб допомогти іншим людям знайти посилання на набори наліпок, які ви хочете зробити загальнодоступними.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "Посилання на набір наліпок", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Встановити", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Створити ще один набір наліпок", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Ось новий набір наліпок, створений мною для Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {Додано 1 зображення} few {Додано {count,number} зображення} many {Додано {count,number} зображень} other {Додано {count,number} зображення}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Анімація наразі не підтримується", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Додане зображення завелике", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Помилка в обробці зображення", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Анімовані зображення PNG мають бути квадратними", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Анімовані зображення мають повторюватися постійно", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Розміри анімованого зображення PNG завеликі", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Розміри анімованого зображення PNG замалі", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Помилка в завантаженні зображень: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Не вдається підключитися до сервера: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Не вдалося завантажити зображення, тому що термін дії облікових даних минув. Будь ласка, відкрийте сайт із Signal для комп'ютера ще раз.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Посилання скопійовано", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Моя наліпка у світлій темі", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Моя наліпка в темній темі", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Щоб створити набір наліпок, потрібно встановити Signal на телефон і комп'ютер", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Емодзі", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Налаштуйте реакції", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Псевдонім емодзі", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/ur/messages.json b/sticker-creator/src/assets/locales/ur/messages.json new file mode 100644 index 000000000..0040aaf43 --- /dev/null +++ b/sticker-creator/src/assets/locales/ur/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "اسٹیکر آرٹ کا تخلیق کار" + }, + "index--create-sticker-pack" : { + "message" : "نیا اسٹیکر پیک تخلیق کریں" + }, + "SignIn--title" : { + "message" : "اسٹیکر پیک تخلیق کریں", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Signal میں موجود تمام دوسری چیزوں کی طرح، اسٹیکرز بھی انکرپٹ کردہ ہوتے ہیں۔ اپنا ذاتی اسٹیکر پیکس تخلیق کرنے کے لیے اس ٹول کا استعمال کریں۔", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "سائن ان کوڈ", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "آغاز کرنے کے لیے Signal ڈیسک ٹاپ کھولیں", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "معذرت، آپ کا براؤزر سپورٹ یافتہ نہیں ہے۔ براہ کرم اس لنک کو Firefox یا Chrome میں کھولیں", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "منسوخ کریں" + }, + "minutesAgo" : { + "message" : "$minutes$منٹ", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "کوئی ایموجی نہیں ملا", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "ایموجی تلاش کریں", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "اسکن ٹون $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "سمائیلیز اور افراد", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "جانور اور قدرت", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "خوراک اور مشروب", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "سفر اور مقامات", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "سرگرمیاں", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "اشیاء", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "علامتیں", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "جھنڈے", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal آرٹ کا تخلیق کار", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal کے اسٹیکر پیک کا تخلیق کار", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal لوگو", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "اسٹیکر پیک کے تخلیق کار کے لیے گائیڈ لائنز", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "تصاویر یہاں شامل کرنے یا چھوڑنے کے لیے کلک کریں", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "تصاویر یہاں چھوڑیں", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "اسٹیکر پیک", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "اسٹیکر پیک", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "منسوخ کریں", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "کاپی کریں", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "اگلا", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "واپس جائیں", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "اپنے اسٹیکرز شامل کریں", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "تصویر ہٹائیں", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "اسٹیکر شامل کرنے کے لیے فائل پر کلک کریں یا گھسیٹیں/چھوڑیں", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "اسٹیکرز کو PNG ،APNG، یا WebP فارمیٹ میں شفاف پس منظر اور 512x512 پکسلز کا حامل ہونا لازمی ہے۔ تجویز کردہ مارجن 16px ہے۔", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "مارجنز ملاحظہ کریں", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "ہر اسٹیکر میں ایک ایموجی شامل کریں", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "جب آپ پیغام رسانی کر رہے ہوتے ہیں تو اس سے ہمیں آپ کو اسٹیکرز تجویز کرنے میں مدد ملتی ہے۔", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "بس کچھ مزید تفصیلات...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "عنوان", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "اپنے اسٹیکر پیک کو نام دیں", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "مصنف", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "اس کے تحت اپنے اسٹیکرز جمع کروانے کے لیے نام درج کریں", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "کور تصویر", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "جب آپ اپنا اسٹیکر پیک شیئر کرتے ہیں تو یہ وہ تصویر ہے جو ظاہر ہو گی", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "کیا آپ واقعتاً اپنا اسٹیکر پیک اپ لوڈ کرنا چاہتے ہیں؟", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "اپ لوڈ کریں", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "اسٹیکر پیک تخلیق کرنے کے بعد آپ مزید ترمیمات یا حذف کرنے کے قابل نہیں ہوں گے۔", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "آپ کا اسٹیکر پیک تخلیق کیا جا رہا ہے", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$total$ میں سے $count$ اپ لوڈ ہو گئے", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "مبارک ہو! آپ اسٹیکر پیک تخلیق کر چکے ہیں۔", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "اسٹیکر آئیکن کے ذریعے اپنے نئے اسٹیکرز تک رسائی حاصل کریں، یا درج ذیل لنک کا استعمال کرتے ہوئے اپنے دوستوں کے ساتھ شئیر کریں۔", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "کسی بھی حسبِ ضرورت اسٹیکر پیکس کے URLs تلاش کرنے میں دیگر افراد کی مدد کرنے کے لیے ہیش ٹیگ $hashtag$ استعمال کریں جسے آپ عوامی طور پر قابلِ رسائی بنانا پسند کریں گے۔", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "اسٹیکر پیک URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "انسٹال", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "ایک اور اسٹیکر پیک تخلیق کریں", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "یہ نیا اسٹیکر پیک چیک کریں جو میں نے Signal کے لیے تخلیق کیا ہے۔ #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, one {1 تصویر شامل کر دی گئی} other {{count,number} تصاویر شامل کر دی گئیں}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "اینیمیٹڈ آرٹ فی الحال سپورٹ یافتہ نہیں ہے", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "چھوڑی گئی تصویر بہت بڑی ہے", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "تصویر پر کارروائی میں خامی", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "اینیمیٹڈ PNG تصاویر کا مستطیل ہونا لازمی ہے", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "اینیمیٹڈ تصاویر کا ہمیشہ لوپ ہونا لازمی ہے", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "اینیمیٹڈ PNG تصویر کی ڈائمنشنز بہت بڑی ہیں", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "اینیمیٹڈ PNG تصویر کی ڈائمنشنز بہت چھوٹی ہیں", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "تصاویر اپ لوڈ ہونے میں نقص: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "سرور سے منسلک نہیں ہو سکتا: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "کوائف کے زائد المیعاد ہونے کے باعث تصاویر اپ لوڈ کرنے سے قاصر ہیں۔ براہ کرم ایک بار پھر Signal ڈیسک ٹاپ سے ویب سائٹ کو دوبارہ کھولیں۔", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "لنک کاپی کر لیا", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "لائٹ تھیم میں میرا اسٹیکر", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "ڈارک تھیم میں میرا اسٹیکر", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "براہ کرم اسٹیکر پیک تخلیق کار کو استعمال کرنے کے لیے اپنے فون اور ڈیسک ٹاپ پر Signal سیٹ کریں", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "ایموجی", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "ری ایکشنز کو اپنے حسبِ ضرورت بنائیں", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "ایموجی کا عرفی نام", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/vi/messages.json b/sticker-creator/src/assets/locales/vi/messages.json new file mode 100644 index 000000000..1a7df7589 --- /dev/null +++ b/sticker-creator/src/assets/locales/vi/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "Công Cụ Tạo Nhãn Dán Nghệ Thuật" + }, + "index--create-sticker-pack" : { + "message" : "Tạo gói nhãn dán mới" + }, + "SignIn--title" : { + "message" : "Tạo Một Gói Nhãn Dán", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "Giống như mọi điều khác trong Signal, nhãn dán cũng được mã hóa. Sử dụng công cụ này để tạo các gói nhãn dán của riêng bạn.", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "Mã Đăng Nhập", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "Mở Signal Desktop Để Bắt đầu", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "Rất tiếc, trình duyệt của bạn không được hỗ trợ. Vui lòng mở liên kết này trong Firefox hoặc Chrome", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "Hủy" + }, + "minutesAgo" : { + "message" : "$minutes$ phút", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "Không tìm thấy emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "Tìm kiếm Emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "Màu da $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "Mặt cười và Con người", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "Thú vật & Thiên nhiên", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "Đồ ăn & Thức uống", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "Du lịch & Nơi chốn", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "Hoạt động", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "Đồ vật", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "Kí hiệu", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "Cờ", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Công Cụ Tạo Hình Ảnh Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Công Cụ Tạo Nhãn Dán Signal", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal Logo", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Quy Định Công Cụ Tạo Gói Nhãn Dán", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "Nhấn để thêm ảnh hoặc kéo thả vào đây", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "Kéo thả ảnh vào đây", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "Gói nhãn dán", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "Gói nhãn dán", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "Hủy", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "Sao chép", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "Tiếp", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "Trở lại", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "Thêm nhãn dán của bạn", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "Gỡ hình ảnh", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "Nhấp hoặc kéo/thả một tệp để thêm một nhãn dán", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "Nhãn dán phải có định dạng PNG, APNG, hoặc WebP với ảnh nền trong suốt và 512x512 pixel. Bản lề gợi ý là 16px.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "Hiển thị lề", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "Gán emoji vào mỗi nhãn dán", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "Thao tác này sẽ giúp gợi ý nhãn dán khi bạn đang nhắn tin.", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "Chỉ một vài chi tiết nữa…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "Tiêu đề", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "Đặt tên cho gói nhãn dán của bạn", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "Tác giả", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "Nhập tên để gửi nhãn dán của bạn", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "Ảnh đại diện", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "Đây là ảnh đại diện khi bạn chia sẻ gói nhãn dán", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "Bạn có chắc muốn tải lên gói nhãn dán này?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "Tải lên", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "Bạn sẽ không thể chỉnh sửa hay xóa gói nhãn dán sau khi tải lên.", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "Tạo gói nhãn dán của bạn", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "Đã tải lên $count$ trên tổng số $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "Chúc mừng! Bạn đã tạo một gói nhãn dán.", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "Truy cập nhãn dán mới thông qua icon nhãn dán, hoặc chia sẻ với bạn bè bằng cách sử dụng đường dẫn bên dưới.", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "Dùng hashtag $hashtag$ để giúp mọi người tìm thấy URL của những gói nhãn dán bạn muốn chia sẻ.", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "URL gói nhãn dán", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "Cài đặt", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "Tạo gói nhãn dán khác", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "Xem gói nhãn dán tôi vừa tạo cho Signal. #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {{count,number} ảnh được thêm}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "Ảnh động hiện tại chưa được hỗ trợ", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "Ảnh quá lớn", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "Lỗi trong việc xử lý ảnh", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "Ảnh động PNG phải là hình vuông", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "Ảnh động phải lặp lại liên tục", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "Kích cỡ ảnh động PNG quá lớn", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "Kích cỡ ảnh động PNG quá nhỏ", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "Lỗi trong việc tải ảnh lên: $message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "Không thể kết nối với máy chủ: $message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "Không thể tải lên hình ảnh do thông tin đăng nhập đã hết hạn. Vui lòng mở lại trang web từ Signal Desktop.", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "Đã sao chép liên kết", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "Nhãn dán trên nền sáng", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "Nhãn dán trên nền tối", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "Vui lòng cài Signal trên điện thoại và máy tính để sử dụng Công Cụ Tạo Nhãn Dán Signal", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "Emoji", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "Tuỳ chỉnh bày tỏ cảm xúc", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "Biệt hiệu emoji", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/zh-CN/messages.json b/sticker-creator/src/assets/locales/zh-CN/messages.json new file mode 100644 index 000000000..79f64fedf --- /dev/null +++ b/sticker-creator/src/assets/locales/zh-CN/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "贴纸艺术创建器" + }, + "index--create-sticker-pack" : { + "message" : "创建新的贴纸包" + }, + "SignIn--title" : { + "message" : "创建一个贴纸包", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "像 Signal 上的其他所有信息一样,贴纸也是加密的。快用这个工具创建属于你的专属贴纸包吧。", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "登录码", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "打开 Signal Desktop 以开始", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "抱歉,您的浏览器不支持。请在 Firefox 或 Chrome 中打开此链接", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "取消" + }, + "minutesAgo" : { + "message" : "$minutes$ 分钟", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "没有找到符合条件的表情", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "搜索表情", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "肤色 $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "笑脸和情感", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "动物和自然", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "食物和饮料", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "旅行和地点", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "活动", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "物品", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "符号", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "旗帜", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal 艺术创建器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal 贴纸包创建器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal 徽标", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "Signal 贴纸包创建器指南", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "点击添加或将图片拖放到此处", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "将图片拖放至此处", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "贴纸包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "贴纸包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "取消", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "复制", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "下一步", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "返回", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "添加贴纸", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "移除图片", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "点击或拖/放文件以添加贴纸", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "贴纸必须是:PNG、APNG 或 WebP 格式,背景透明,512x512 像素。推荐边距为 16 像素。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "查看边距", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "为每张贴纸添加一个表情符号", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "这能帮助我们在您聊天时推荐贴纸。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "输入详情…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "命名", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "为你的贴纸包命名", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "创作者", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "输入贴纸创作者名字", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "封面图片", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "分享贴纸包时将展示该图片", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "是否确定上传贴纸包?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "上传", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "贴纸包创建完毕之后,不可继续编辑或删除。", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "正在创建贴纸包", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$ 之 $total$ 已上传", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "恭喜!贴纸包创建完成。", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "通过贴纸图标访问你的新贴纸,或使用下方链接分享给好友。", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "如您希望公开自定义贴纸包,添加标签 $hashtag$ 可帮助用户找到相应的 URL 地址。", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "贴纸包 URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "安装", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "创建新的贴纸包", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "欢迎围观我新建的 Signal 贴纸包。#makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {已添加 {count,number} 张图片}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "动画艺术目前暂不支持", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "拖放的图片过大", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "处理图片出错", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "动画 PNG 图片必须是正方形", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "动画图片必须无限循环", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "动画 PNG 图片尺寸过大", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "动画 PNG 图片尺寸过小", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "上传图片时出错:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "无法连接服务器:$message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "登录身份过期,上传图片失败。请通过 Signal Desktop 重新打开网站。", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "链接已复制", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "浅色主题贴纸效果", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "深色主题贴纸效果", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "如需使用贴纸包创建器,请在手机和桌面电脑上设置 Signal", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "表情", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "自定义反应", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "表情别名", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/zh-HK/messages.json b/sticker-creator/src/assets/locales/zh-HK/messages.json new file mode 100644 index 000000000..ea6ccf926 --- /dev/null +++ b/sticker-creator/src/assets/locales/zh-HK/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "貼圖包藝術製作器" + }, + "index--create-sticker-pack" : { + "message" : "建立新的貼圖包" + }, + "SignIn--title" : { + "message" : "建立貼圖包", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "和其他 Signal 內容一樣,貼圖已經加密。使用此工具建立你的自訂貼圖包。", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "登入代碼", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "開啟 Signal 桌面版即可開始", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "抱歉,系統不支援你的瀏覽器。請使用 Firefox 或 Chrome 開啟此連結", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "取消" + }, + "minutesAgo" : { + "message" : "$minutes$ 分鐘", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "找不到表情符號", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "搜尋表情符號", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "膚色 $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "笑臉及人物", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "動物及自然", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "食物及飲品", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "旅行及地點", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "活動", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "物件", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "符號", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "旗幟", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal 藝術製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal 貼圖包製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal 標誌", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "貼圖包製作器指南", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "點擊以新增或將圖片放到此處", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "將圖片放到此處", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "取消", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "複製", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "下一步", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "返回", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "新增你的貼圖", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "移除圖片", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "點擊或拖放檔案以新增貼圖", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "貼圖必須為 PNG、APNG 或 WebP 格式,並使用透明背景及 512x512 像素;建議邊距為 16 像素。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "檢視邊距", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "為每個貼圖新增表情符號", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "這將允許我們在你傳送訊息時向你建議貼圖。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "只需額外幾項細節…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "標題", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "為你的貼圖包命名", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "作者", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "輸入名稱以提交你的貼圖", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "封面圖片", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "這是你分享貼圖包時顯示的圖片", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "你確定要上載貼圖包嗎?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "上載", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "建立貼圖包後,你將無法再編輯或刪除。", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "正在建立你的貼圖包", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "已上載 $count$ / $total$", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "恭喜!你已建立了一個貼圖包。", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "使用貼圖圖示查看你的新貼圖,或透過下方連結與朋友分享。", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "使用主題標籤 $hashtag$ 可協助他人找到你公開發佈的自訂貼圖包網址。", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "貼圖包網址", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "安裝", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "建立另一個貼圖包", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "來看看我為 Signal 製作的新貼圖包。#makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {已新增 {count,number} 張圖片}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "系統暫不支援動態藝術", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "放置的圖片檔案太大", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "影像處理錯誤", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "動態 PNG 圖片必須為正方形", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "動態圖片必須循環播放", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "動態 PNG 圖片尺寸太大", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "動態 PNG 圖片尺寸太小", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "圖片上載錯誤:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "無法連接到伺服器:$message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "由於憑證過期,無法上載圖片。請於 Signal 桌面版重新開啟網站。", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "已複製連結", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "我的淺色主題貼圖", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "我的深色主題貼圖", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "請在手機和桌上型電腦設定 Signal 以使用貼圖包製作器", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "表情符號", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "自訂心情回應", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "表情符號別名", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/zh-TW/messages.json b/sticker-creator/src/assets/locales/zh-TW/messages.json new file mode 100644 index 000000000..7ae00b679 --- /dev/null +++ b/sticker-creator/src/assets/locales/zh-TW/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "貼圖包藝術製作器" + }, + "index--create-sticker-pack" : { + "message" : "建立新的貼圖包" + }, + "SignIn--title" : { + "message" : "建立貼圖包", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "和其他 Signal 內容一樣,貼圖已經加密。使用此工具建立你的自訂貼圖包。", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "登入代碼", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "開啟 Signal 桌面版即可開始", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "抱歉,系統不支援你的瀏覽器。請使用 Firefox 或 Chrome 開啟此連結", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "取消" + }, + "minutesAgo" : { + "message" : "$minutes$ 分鐘前", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "找不到 Emoji", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "搜尋 Emoji", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "膚色 $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "笑臉 & 人們", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "動物 & 大自然", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "食物 & 飲料", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "旅行 & 地點", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "活動", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "物品", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "符號", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "旗幟", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal 藝術製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal 貼圖包製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal 標誌", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "貼圖包製作器指南", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "點擊以此處新增或放置圖片", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "將圖片放至此處", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "取消", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "複製", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "推特", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "下一步", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "返回", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "新增你的貼圖", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "移除圖片", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "單擊或拖放檔案以新增貼圖", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "貼圖必須為PNG,APNG或WebP格式,並具有透明背景和512x512畫素。 建議邊距為16畫素。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "檢視邊距", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "在每個貼圖新增一個表情符號", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "這將允許我們可以在你傳送訊息時向你建議貼圖。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "還有更多細節…", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "標題", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "為你的貼圖包命名", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "作者名", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "輸入名稱以提交你的貼圖", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "封面圖案", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "這是共享貼圖包時將顯示的圖片", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "你確定要上傳你的貼圖包?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "上傳", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "創作貼紙包後,你將不能夠再編輯或刪除。", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "製作你的貼圖包", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "$count$之$total$已上傳", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "恭喜!你已經製作了一個貼圖包。", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "透過貼圖圖示連結到你的新貼圖,或使用下面的連結與你的朋友分享。", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "使用主題標籤$hashtag$可以幫助其他人找到你要公開連結的任何自定義貼圖包的URL。", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "貼圖包 URL", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "安裝", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "製作另一個貼圖包", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "查看我為 Signal 製作的新貼圖包。 #makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {已新增 {count,number} 個圖像}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "系統暫不支援動態藝術", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "已放置的圖片檔案太大", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "影像處理錯誤", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "動態 PNG 圖片必須為正方形", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "動態圖片必須循環播放", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "動態 PNG 圖片尺寸太大", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "動態 PNG 圖片尺寸太小", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "圖片上載錯誤:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "無法連接到伺服器:$message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "由於憑證過期,無法上載圖片。請於 Signal 桌面版重新開啟網站。", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "已複製貼圖包連結", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "明亮主題下的我的貼圖", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "深色主題下我的貼圖", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "請在手機和桌上型電腦設定 Signal 以使用貼圖包編輯器", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "表情", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "自定義回應", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "表情符號別名", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/locales/zh-YU/messages.json b/sticker-creator/src/assets/locales/zh-YU/messages.json new file mode 100644 index 000000000..06365d225 --- /dev/null +++ b/sticker-creator/src/assets/locales/zh-YU/messages.json @@ -0,0 +1,335 @@ +{ + "smartling" : { + "placeholder_format_custom" : "(\\$.+?\\$)", + "string_format_paths" : "icu: [*/messageformat]", + "translate_paths" : [ + { + "path" : "*/messageformat", + "key" : "{*}/messageformat", + "instruction" : "*/description" + }, + + { + "key" : "{*}/message", + "path" : "*/message", + "instruction" : "*/description" + }] + }, + "index--title" : { + "message" : "貼圖包藝術製作器" + }, + "index--create-sticker-pack" : { + "message" : "建立新嘅貼圖包" + }, + "SignIn--title" : { + "message" : "建立貼圖包", + "description" : "A title of SignIn page" + }, + "icu:SignIn--body" : { + "messageformat" : "同其他 Signal 內容一樣,貼圖都有經過加密。你可以用呢個工具嚟建立自訂貼圖包。", + "description" : "A body of SignIn page" + }, + "SignIn--qr" : { + "message" : "登入代碼", + "description" : "An alt text of QR code displayed on sign in page" + }, + "SignIn--link" : { + "message" : "打開 Signal 桌面版就可以開始", + "description" : "A link text for signing into the website using Signal Desktop client" + }, + "UnsupportedBrowser--description" : { + "message" : "唔好意思,系統唔支援你嘅瀏覽器。請你用 Firefox 或者 Chrome 開啟呢條連結", + "description" : "A text displayed when user's browser is not supported" + }, + "cancel" : { + "message" : "取消" + }, + "minutesAgo" : { + "message" : "$minutes$ 分鐘前", + "description" : "Contracted form of 'X minutes ago' which works both for singular and plural" + }, + "EmojiPicker--empty" : { + "message" : "搵唔到表情符號", + "description" : "Shown in the emoji picker when a search yields 0 results." + }, + "EmojiPicker--search-placeholder" : { + "message" : "搵表情符號", + "description" : "Shown as a placeholder inside the emoji picker search field." + }, + "EmojiPicker--skin-tone" : { + "message" : "膚色 $tone$", + "description" : "Shown as a tooltip over the emoji tone buttons." + }, + "EmojiPicker--category--smileys_people" : { + "message" : "公仔同人像", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--animals_nature" : { + "message" : "動物同大自然", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--food_drink" : { + "message" : "飲飲食食", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--travel_places" : { + "message" : "出行", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--activities" : { + "message" : "活動", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--objects" : { + "message" : "物件", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--symbols" : { + "message" : "符號", + "description" : "Name of the emoji picker category." + }, + "EmojiPicker--category--flags" : { + "message" : "旗幟", + "description" : "Name of the emoji picker category." + }, + "ArtCreator--title" : { + "message" : "Signal 藝術製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--sticker" : { + "message" : "Signal 貼圖包製作器", + "description" : "The title of the Sticker Pack Creator window" + }, + "StickerCreator--title--icon" : { + "message" : "Signal 標誌", + "description" : "An alt text of signal logo" + }, + "StickerCreator--guidelines" : { + "message" : "貼圖包製作器指南", + "description" : "The title of the Sticker Pack Guidelines link" + }, + "StickerCreator--DropZone--staticText" : { + "message" : "㩒一吓喺呢度加入或者放置圖像", + "description" : "Text which appears on the Sticker Creator drop zone when there is no active drag" + }, + "StickerCreator--DropZone--activeText" : { + "message" : "喺呢度放置圖像", + "description" : "Text which appears on the Sticker Creator drop zone when there is an active drag" + }, + "StickerCreator--Preview--title--sticker" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--Preview--title--emoji" : { + "message" : "貼圖包", + "description" : "The 'title' of the sticker pack preview 'modal'" + }, + "StickerCreator--ConfirmDialog--cancel" : { + "message" : "取消", + "description" : "The default text for the confirm dialog cancel button" + }, + "StickerCreator--CopyText--button" : { + "message" : "複製", + "description" : "The text which appears on the copy button for the sticker creator share screen" + }, + "StickerCreator--ShareButtons--facebook" : { + "message" : "Facebook", + "description" : "Title for Facebook button" + }, + "StickerCreator--ShareButtons--twitter" : { + "message" : "Twitter", + "description" : "Title for Twitter button" + }, + "StickerCreator--ShareButtons--pinterest" : { + "message" : "Pinterest", + "description" : "Title for Pinterest button" + }, + "StickerCreator--ShareButtons--whatsapp" : { + "message" : "WhatsApp", + "description" : "Title for WhatsApp button" + }, + "StickerCreator--AppStage--next" : { + "message" : "下一步", + "description" : "Default text for the next button on all stages of the sticker creator" + }, + "StickerCreator--AppStage--prev" : { + "message" : "返轉頭", + "description" : "Default text for the previous button on all stages of the sticker creator" + }, + "icu:StickerCreator--DropStage--title--sticker" : { + "messageformat" : "加入你嘅貼圖", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--removeSticker" : { + "message" : "移除圖片", + "description" : "Label for the X button used to remove a staged image" + }, + "StickerCreator--DropStage--dragDrop--sticker" : { + "message" : "㩒一吓或者拖放檔案嚟加入貼圖", + "description" : "Shown on the + section of the file addition stage of sticker pack creation" + }, + "StickerCreator--DropStage--help--sticker" : { + "message" : "貼圖一定要用 512x512 像素同埋透明背景嘅 PNG、APNG 或者 WebP 格式。建議邊界係 16 像素。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--DropStage--showMargins" : { + "message" : "檢視邊距", + "description" : "Text for the show margins toggle on the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--title--sticker" : { + "message" : "幫每個貼圖加一個表情符號", + "description" : "Title for the drop stage of the sticker creator" + }, + "StickerCreator--EmojiStage--help--sticker" : { + "message" : "咁我哋就可以喺你傳送訊息嘅時候建議貼圖俾你喇。", + "description" : "Help text for the drop stage of the sticker creator" + }, + "StickerCreator--MetaStage--title" : { + "message" : "要多少少細節...", + "description" : "Title for the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title" : { + "message" : "標題", + "description" : "Label for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--title-placeholder" : { + "message" : "為你嘅貼圖包命名", + "description" : "Placeholder for the title input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author" : { + "message" : "作者", + "description" : "Label for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--author-placeholder" : { + "message" : "輸入名稱嚟提交你嘅貼圖", + "description" : "Placeholder for the author input of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover" : { + "message" : "封面圖片", + "description" : "Label for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--Field--cover--help--sticker" : { + "message" : "呢張圖片會喺你分享貼圖包嘅時候顯示", + "description" : "Help text for the cover image picker of the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--title--sticker" : { + "message" : "你係咪確定要上載貼圖包?", + "description" : "Title for the confirm dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--confirm" : { + "message" : "上載", + "description" : "Text for the upload button in the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--MetaStage--ConfirmDialog--text--sticker" : { + "message" : "建立咗貼圖包之後,你就唔可以再編輯或者刪除佢㗎喇。", + "description" : "The text inside the confirmation dialog on the meta stage of the sticker creator" + }, + "StickerCreator--UploadStage--title--sticker" : { + "message" : "建立緊你嘅貼圖包", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--UploadStage-uploaded" : { + "message" : "上載咗 $total$ 個貼圖,總共有 $count$ 個", + "description" : "Title for the upload stage of the sticker creator" + }, + "StickerCreator--ShareStage--title" : { + "message" : "恭喜你!你已經成功建立咗貼圖包喇。", + "description" : "Title for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--help" : { + "message" : "你可以喺貼圖圖示度搵到你嘅新貼圖,或者用下面條連結同朋友分享。", + "description" : "Help text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--callToAction" : { + "message" : "如果你想公開俾人用自訂嘅貼圖包,可以加個 $hashtag$ 主題標籤,方便其他人搵到貼圖包嘅 URL。", + "description" : "Call to action text for the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--copyTitle" : { + "message" : "貼圖包網址", + "description" : "Title for the copy button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--install" : { + "message" : "安裝", + "description" : "Text for the primary button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--createAnother" : { + "message" : "建立另一個貼圖包", + "description" : "Text for the create another sticker pack button on the share stage of the sticker creator" + }, + "StickerCreator--ShareStage--socialMessage" : { + "message" : "嚟睇吓我新製作嘅 Signal 貼圖包啦。#makeprivacystick", + "description" : "Text which is shared to social media platforms for sticker packs" + }, + "icu:StickerCreator--Toasts--imagesAdded" : { + "messageformat" : "{count, plural, other {加入咗 {count,number} 張圖片}}", + "description" : "Text for the toast when images are added to the sticker creator" + }, + "StickerCreator--Toasts--animated" : { + "message" : "系統目前唔支援動態藝術", + "description" : "Text for the toast when an image that is animated was dropped on the sticker creator" + }, + "StickerCreator--Toasts--tooLarge" : { + "message" : "你放置嘅圖像太大喇", + "description" : "Text for the toast when an image that is too large was dropped on the sticker creator" + }, + "StickerCreator--Toasts--errorProcessing" : { + "message" : "處理唔到圖像", + "description" : "Text for the toast when an image cannot be processed was dropped on the sticker creator with a generic error" + }, + "StickerCreator--Toasts--APNG--notSquare" : { + "message" : "動態 PNG 圖片一定要係正方形", + "description" : "Text for the toast when someone tries to upload a non-square APNG" + }, + "StickerCreator--Toasts--mustLoopForever" : { + "message" : "動態圖片一定要循環播放", + "description" : "Text for the toast when an image in the art creator does not animate forever" + }, + "StickerCreator--Toasts--APNG--dimensionsTooLarge" : { + "message" : "動態 PNG 圖片尺寸太大", + "description" : "Text for the toast when an APNG image in the art creator is too large" + }, + "StickerCreator--Toasts--APNG--dimensionsTooSmall" : { + "message" : "動態 PNG 圖片尺寸太細", + "description" : "Text for the toast when an APNG image in the art creator is too small" + }, + "StickerCreator--Toasts--errorUploading" : { + "message" : "圖片上載錯誤:$message$", + "description" : "Text for the toast when a art pack cannot be uploaded" + }, + "StickerCreator--Toasts--errorSigningIn" : { + "message" : "連接唔到伺服器:$message$", + "description" : "Text for the toast displayed when connection to the server cannot be established." + }, + "StickerCreator--Toasts--expired-credenitals" : { + "message" : "由於憑證過期,所以上載唔到圖片。請你喺 Signal 桌面版重新開啟網站。", + "description" : "Text for the toast when a art pack cannot be uploaded due to expired credentials" + }, + "StickerCreator--Toasts--linkedCopied" : { + "message" : "複製咗連結", + "description" : "Text for the toast when a link for sharing is copied from the Sticker Creator" + }, + "StickerCreator--StickerPreview--light" : { + "message" : "淺色主題嘅貼圖效果", + "description" : "Text for the sticker preview for the light theme" + }, + "StickerCreator--StickerPreview--dark" : { + "message" : "深色主題嘅貼圖效果", + "description" : "Text for the sticker preview for the dark theme" + }, + "StickerCreator--Authentication--error" : { + "message" : "如果要用貼圖包製作工具嘅話,請你喺手機同桌面電腦設定 Signal。", + "description" : "The error message which appears when the user has not linked their account and attempts to use the Sticker Creator" + }, + "EmojiButton__label" : { + "message" : "表情符號", + "description" : "Label for emoji button" + }, + "CustomizingPreferredReactions__title" : { + "message" : "自訂心情回應", + "description" : "Shown in the header of the modal for customizing the preferred reactions. Also shown in the tooltip for the button that opens this modal." + }, + "ArtFrame--emoji-name-placeholder" : { + "message" : "表情符號別名", + "description" : "Shown as a placeholder of input below the emoji image to let user select the lowercase alias to be used for the emoji." + } +} diff --git a/sticker-creator/src/assets/signal.svg b/sticker-creator/src/assets/signal.svg new file mode 100644 index 000000000..2f9c3d266 --- /dev/null +++ b/sticker-creator/src/assets/signal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sticker-creator/src/colors.scss b/sticker-creator/src/colors.scss new file mode 100644 index 000000000..fc3ca03a0 --- /dev/null +++ b/sticker-creator/src/colors.scss @@ -0,0 +1,236 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +$color-accent-blue: #2c6bed; +$color-accent-green: #4caf50; +$color-accent-red: #f44336; +$color-accent-yellow: #ffd624; + +$color-white: #ffffff; +$color-gray-02: #f6f6f6; +$color-gray-04: #f0f0f0; +$color-gray-05: #e9e9e9; +$color-gray-15: #dedede; +$color-gray-20: #c6c6c6; +$color-gray-25: #b9b9b9; +$color-gray-45: #848484; +$color-gray-60: #5e5e5e; +$color-gray-62: #545454; +$color-gray-65: #4a4a4a; +$color-gray-75: #3b3b3b; +$color-gray-80: #2e2e2e; +$color-gray-90: #1b1b1b; +$color-gray-95: #121212; +$color-black: #000000; + +$color-white-alpha-06: rgba($color-white, 0.06); +$color-white-alpha-08: rgba($color-white, 0.08); +$color-white-alpha-12: rgba($color-white, 0.12); +$color-white-alpha-20: rgba($color-white, 0.2); +$color-white-alpha-40: rgba($color-white, 0.4); +$color-white-alpha-60: rgba($color-white, 0.6); +$color-white-alpha-70: rgba($color-white, 0.7); +$color-white-alpha-75: rgba($color-white, 0.75); +$color-white-alpha-80: rgba($color-white, 0.8); +$color-white-alpha-90: rgba($color-white, 0.9); + +$color-black-alpha-05: rgba($color-black, 0.05); +$color-black-alpha-06: rgba($color-black, 0.06); +$color-black-alpha-08: rgba($color-black, 0.08); +$color-black-alpha-12: rgba($color-black, 0.12); +$color-black-alpha-16: rgba($color-black, 0.16); +$color-black-alpha-20: rgba($color-black, 0.2); +$color-black-alpha-24: rgba($color-black, 0.24); +$color-black-alpha-30: rgba($color-black, 0.3); +$color-black-alpha-40: rgba($color-black, 0.4); +$color-black-alpha-50: rgba($color-black, 0.5); +$color-black-alpha-60: rgba($color-black, 0.6); +$color-black-alpha-70: rgba($color-black, 0.7); +$color-black-alpha-80: rgba($color-black, 0.8); +$color-black-alpha-90: rgba($color-black, 0.9); + +$color-transparent: rgba(0, 0, 0, 0); + +$color-ultramarine-dark: #1851b4; +$color-ultramarine-icon: #3a76f0; +$color-ultramarine-light: #6191f3; +$color-ultramarine-dawn: #406ec9; +$color-ultramarine: #2c6bed; + +// Flat colors + +$color-crimson: #cf163e; +$color-vermilion: #c73f0a; +$color-burlap: #6f6a58; +$color-forest: #3b7845; +$color-wintergreen: #1d8663; +$color-teal: #077d92; +$color-blue: #336ba3; +$color-indigo: #6058ca; +$color-violet: #9932c8; +$color-plum: #aa377a; +$color-taupe: #8f616a; +$color-steel: #71717f; + +// Gradient colors + +$color-ultramarine-gradient: ( + deg: 180deg, + start: #0552f0, + end: $color-ultramarine, +); +$color-basil: ( + deg: 180deg, + start: #2f9373, + end: #077343, +); +$color-ember: ( + deg: 168deg, + start: #e57c00, + end: #5e0000, +); +$color-fluorescent: ( + deg: 192deg, + start: #ec13dd, + end: #1b36c6, +); +$color-infrared: ( + deg: 192deg, + start: #f65560, + end: #442ced, +); +$color-lagoon: ( + deg: 180deg, + start: #004066, + end: #32867d, +); +$color-midnight: ( + deg: 180deg, + start: #2c2c3a, + end: #787891, +); +$color-sea: ( + deg: 180deg, + start: #498fd4, + end: #2c66a0, +); +$color-sublime: ( + deg: 180deg, + start: #6281d5, + end: #974460, +); +$color-tangerine: ( + deg: 192deg, + start: #db7133, + end: #911231, +); + +// Avatars + +$avatar-color-A100: ( + bg: #e3e3fe, + fg: #3838f5, +); +$avatar-color-A110: ( + bg: #dde7fc, + fg: #1251d3, +); +$avatar-color-A120: ( + bg: #d8e8f0, + fg: #086da0, +); +$avatar-color-A130: ( + bg: #cde4cd, + fg: #067906, +); +$avatar-color-A140: ( + bg: #eae0fd, + fg: #661aff, +); +$avatar-color-A150: ( + bg: #f5e3fe, + fg: #9f00f0, +); +$avatar-color-A160: ( + bg: #f6d8ec, + fg: #b8057c, +); +$avatar-color-A170: ( + bg: #f5d7d7, + fg: #be0404, +); +$avatar-color-A180: ( + bg: #fef5d0, + fg: #836b01, +); +$avatar-color-A190: ( + bg: #eae6d5, + fg: #7d6f40, +); +$avatar-color-A200: ( + bg: #d2d2dc, + fg: #4f4f6d, +); +$avatar-color-A210: ( + bg: #d7d7d9, + fg: #5c5c5c, +); + +// Maps for easy manipulation + +$avatar-colors: ( + A100: $avatar-color-A100, + A110: $avatar-color-A110, + A120: $avatar-color-A120, + A130: $avatar-color-A130, + A140: $avatar-color-A140, + A150: $avatar-color-A150, + A160: $avatar-color-A160, + A170: $avatar-color-A170, + A180: $avatar-color-A180, + A190: $avatar-color-A190, + A200: $avatar-color-A200, + A210: $avatar-color-A210, +); + +$conversation-colors: ( + 'blue': $color-blue, + 'burlap': $color-burlap, + 'crimson': $color-crimson, + 'forest': $color-forest, + 'indigo': $color-indigo, + 'plum': $color-plum, + 'steel': $color-steel, + 'taupe': $color-taupe, + 'teal': $color-teal, + 'vermilion': $color-vermilion, + 'violet': $color-violet, + 'wintergreen': $color-wintergreen, +); + +$conversation-colors-gradient: ( + 'ultramarine': $color-ultramarine-gradient, + 'basil': $color-basil, + 'ember': $color-ember, + 'fluorescent': $color-fluorescent, + 'infrared': $color-infrared, + 'lagoon': $color-lagoon, + 'midnight': $color-midnight, + 'sea': $color-sea, + 'sublime': $color-sublime, + 'tangerine': $color-tangerine, +); + +// Used for the safety number change warning banner +$color-ios-blue-tint: #b0c8f9; + +// -- Non-V3 colors + +// Used in spinners +$color-white-alpha-40: rgba($color-white, 0.4); + +// Used in tap-to-view error states +$color-deep-red: #ff261f; + +$color-selected-message-background-light: rgba(44, 107, 237, 0.24); +$color-selected-message-background-dark: $color-gray-65; diff --git a/sticker-creator/src/components/ArtFrame.module.scss b/sticker-creator/src/components/ArtFrame.module.scss new file mode 100644 index 000000000..59a3c0147 --- /dev/null +++ b/sticker-creator/src/components/ArtFrame.module.scss @@ -0,0 +1,229 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +$width: 186px; +$height: 186px; +$guide-offset: 6px; +$border-width: 1px; + +// They are 128x128 natively, but we downscale them so that they look good +// on retina displays. +$emoji-width: 64px; +$emoji-height: 64px; + +.container { + display: flex; + flex-direction: column; + gap: 10px; +} + +.non-draggable { + // Just for SortableJS filter + cursor: auto; +} + +.size-container { + display: flex; + justify-content: center; + align-items: center; + position: relative; + overflow: hidden; + user-select: none; + + border: { + radius: 6px; + width: $border-width; + style: solid; + } + + @include light-theme() { + border-color: $color-gray-25; + background: $color-white; + } + + @include dark-theme() { + border-color: $color-gray-60; + background: $color-gray-90; + } + + width: $width; + height: $height; + + &[data-drag-active='true'] { + @include light-theme() { + border-color: $color-ultramarine; + } + + @include dark-theme() { + border-color: $color-ultramarine-light; + } + } +} + +.image { + width: 100%; + height: 100%; + + &[data-art-type='emoji'] { + width: $emoji-width; + height: $emoji-height; + } +} + +.spinner { + composes: image; + display: flex; + justify-content: center; + align-items: center; + + @include light-theme() { + color: $color-gray-25; + } + + @include dark-theme() { + color: $color-gray-60; + } +} + +.emoji-picker-spinner { + composes: spinner; + + @include light-theme() { + background-color: $color-gray-05; + } + + @include dark-theme() { + background-color: $color-gray-75; + } + + padding: 4px; + border-radius: 6px; + + // Should be the same as width of EmojiPickerReact + min-width: 350px; +} + +.guide { + border: { + radius: 0px; + width: $border-width; + style: dashed; + } + @include light-theme() { + border-color: $color-gray-25; + } + + @include dark-theme() { + border-color: $color-gray-60; + } + + width: $width - (2 * $guide-offset); + height: $height - (2 * $guide-offset); + position: absolute; + left: $guide-offset - $border-width; + top: $guide-offset - $border-width; + pointer-events: none; + + &[data-art-type='emoji'] { + width: $emoji-width; + height: $emoji-height; + position: absolute; + left: calc(($width - $emoji-width) / 2); + top: calc(($height - $emoji-height) / 2); + } +} + +.close-button { + position: absolute; + top: 8px; + right: 8px; + width: 20px; + height: 20px; + + display: flex; + justify-content: center; + align-items: center; + font-family: $inter; + border: none; + background: none; + padding: 0; + + filter: drop-shadow(0px 0px 2px $color-black-alpha-60); + + &::after { + content: ''; + width: 20px; + height: 20px; + background: $color-white; + mask-image: url(/src/assets/icons/x-20.svg); + -webkit-mask-image: url(/src/assets/icons/x-20.svg); + } +} + +.emoji-button { + width: 32px; + height: 32px; + position: absolute; + top: 6px; + right: 6px; + border: none; + border-radius: 16px; + padding: 0; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + + @include light-theme() { + background-color: $color-gray-05; + color: $color-gray-90; + } + + @include dark-theme() { + background-color: $color-gray-75; + color: $color-white-alpha-75; + } +} + +.emoji { + font-size: 24px; + + height: 64px; + width: 64px; + object-fit: none; + object-position: calc(-1 * var(--sheet-x) * 66px) + calc(-1 * var(--sheet-y) * 66px); + transform: scale(calc(24 / 64)); +} + +.emoji-name-input { + width: 100%; + padding: 7px 8px; + border-radius: 4px; + background-color: transparent; + font-size: 14px; + font-family: $inter; + + &::placeholder { + color: $color-gray-45; + } + + &:focus { + outline: 0; + border-color: $color-accent-blue; + } + + @include light-theme() { + border: 1px solid $color-gray-15; + color: $color-gray-90; + } + + @include dark-theme() { + border: 1px solid $color-gray-60; + color: $color-white; + } +} diff --git a/sticker-creator/src/components/ArtFrame.tsx b/sticker-creator/src/components/ArtFrame.tsx new file mode 100644 index 000000000..bd2393f66 --- /dev/null +++ b/sticker-creator/src/components/ArtFrame.tsx @@ -0,0 +1,311 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import { createPortal } from 'react-dom'; +import classNames from 'classnames'; +import { + Manager as PopperManager, + Popper, + Reference as PopperReference, +} from 'react-popper'; +import type { EmojiClickData } from '@indutny/emoji-picker-react'; + +import { AddEmoji } from '../elements/icons'; +import type { Props as DropZoneProps } from '../elements/DropZone'; +import { DropZone } from '../elements/DropZone'; +import { StickerPreview } from '../elements/StickerPreview'; +import { Spinner } from '../elements/Spinner'; +import styles from './ArtFrame.module.scss'; +import { useI18n } from '../contexts/I18n'; +import { assert } from '../util/assert'; +import { noop } from '../util/noop'; +import { ArtType } from '../constants'; +import type { EmojiData } from '../types.d'; +import EMOJI_SHEET from '../assets/emoji.webp'; +import { PopperRootContext } from './PopperRootContext'; +import EmojiPicker from './EmojiPicker'; + +export type Mode = 'removable' | 'pick-emoji' | 'add'; + +export type OnPickEmojiOptions = Readonly<{ + id: string; + emoji: EmojiData; +}>; + +export type Props = Partial> & + Readonly<{ + artType: ArtType; + id?: string; + emoji?: EmojiData; + image?: string; + mode?: Mode; + showGuide?: boolean; + onEmojiNameChange?(name: string): unknown; + onPickEmoji?(options: OnPickEmojiOptions): unknown; + onRemove?(id: string): unknown; + }>; + +function Emoji({ name, sheetX, sheetY }: EmojiData): JSX.Element { + const onRef = (elem: HTMLImageElement | null): void => { + if (elem) { + elem.style.setProperty('--sheet-x', sheetX.toString()); + elem.style.setProperty('--sheet-y', sheetY.toString()); + } + }; + return ( + {name} + ); +} + +export const ArtFrame = React.memo(function ArtFrame({ + id, + artType, + emoji, + image, + showGuide, + mode, + onRemove, + onPickEmoji, + onDrop, +}: Props) { + const i18n = useI18n(); + const [emojiPickerOpen, setEmojiPickerOpen] = React.useState(false); + const [emojiPopperRoot, setEmojiPopperRoot] = + React.useState(null); + const [previewActive, setPreviewActive] = React.useState(false); + const [previewPopperRoot, setPreviewPopperRoot] = + React.useState(null); + const timerRef = React.useRef(); + + const handleToggleEmojiPicker = React.useCallback(() => { + setEmojiPickerOpen(open => !open); + }, [setEmojiPickerOpen]); + + const handlePickEmoji = React.useCallback( + (clickData: EmojiClickData) => { + if (!id) { + return; + } + if (!onPickEmoji) { + throw new Error( + 'ArtFrame/handlePickEmoji: onPickEmoji was not provided!' + ); + } + onPickEmoji({ + id, + emoji: { + emoji: clickData.emoji, + sheetX: clickData.sheetX, + sheetY: clickData.sheetY, + name: + clickData.names[0] + ?.replace(/\s+/g, '_') + ?.replace(/[^a-zA-Z_]/g, '') ?? '', + }, + }); + setEmojiPickerOpen(false); + }, + [id, onPickEmoji, setEmojiPickerOpen] + ); + + const handleRemove = React.useCallback(() => { + if (!id) { + return; + } + if (!onRemove) { + throw new Error('ArtFrame/handleRemove: onRemove was not provided!'); + } + onRemove(id); + }, [onRemove, id]); + + const handleMouseEnter = React.useCallback(() => { + window.clearTimeout(timerRef.current); + timerRef.current = window.setTimeout(() => { + setPreviewActive(true); + }, 500); + }, [timerRef, setPreviewActive]); + + const handleMouseLeave = React.useCallback(() => { + clearTimeout(timerRef.current); + setPreviewActive(false); + }, [timerRef, setPreviewActive]); + + React.useEffect( + () => () => { + clearTimeout(timerRef.current); + }, + [timerRef] + ); + + const { createRoot, removeRoot } = React.useContext(PopperRootContext); + + // Create popper root and handle outside clicks + React.useEffect(() => { + if (emojiPickerOpen) { + const root = createRoot(); + setEmojiPopperRoot(root); + const handleOutsideClick = ({ target }: MouseEvent) => { + const targetNode = target as HTMLElement; + const button = targetNode.closest(`button.${styles.emojiButton}`); + if (!root.contains(targetNode) && !button) { + setEmojiPickerOpen(false); + } + }; + document.addEventListener('click', handleOutsideClick); + + return () => { + removeRoot(root); + setEmojiPopperRoot(null); + document.removeEventListener('click', handleOutsideClick); + }; + } + + return noop; + }, [createRoot, emojiPickerOpen, removeRoot]); + + React.useEffect(() => { + if (mode !== 'pick-emoji' && image && previewActive) { + const root = createRoot(); + setPreviewPopperRoot(root); + + return () => { + removeRoot(root); + }; + } + + return noop; + }, [ + createRoot, + image, + mode, + previewActive, + removeRoot, + setPreviewPopperRoot, + ]); + + const [dragActive, setDragActive] = React.useState(false); + + const sizeContainer = ( +
+ { + // eslint-disable-next-line no-nested-ternary + mode !== 'add' ? ( + image ? ( + {artType} + ) : ( +
+ +
+ ) + ) : null + } + {showGuide && mode !== 'add' ? ( +
+ ) : null} + {mode === 'removable' ? ( + + )} + + {emojiPickerOpen && emojiPopperRoot + ? createPortal( + + {({ ref, style }) => ( +
+ +
+ )} +
, + emojiPopperRoot + ) + : null} + + ) : null} + {mode !== 'pick-emoji' && image && previewActive && previewPopperRoot + ? createPortal( + + {({ ref, style, arrowProps, placement }) => { + assert(artType === ArtType.Sticker, 'Unexpected art type'); + return ( + + ); + }} + , + previewPopperRoot + ) + : null} +
+ ); + + const containerClassName = classNames( + styles.container, + mode === 'add' && styles.nonDraggable + ); + + return ( + + + {({ ref: rootRef }) => ( +
+ {sizeContainer} +
+ )} +
+
+ ); +}); diff --git a/sticker-creator/src/components/ArtGrid.module.scss b/sticker-creator/src/components/ArtGrid.module.scss new file mode 100644 index 000000000..0ea20497d --- /dev/null +++ b/sticker-creator/src/components/ArtGrid.module.scss @@ -0,0 +1,15 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +.grid { + display: flex; + gap: 8px; + flex-wrap: wrap; +} + +.drop { + display: flex; + flex-direction: column; + flex-grow: 1; + border-radius: 12px; +} diff --git a/sticker-creator/src/components/ArtGrid.tsx b/sticker-creator/src/components/ArtGrid.tsx new file mode 100644 index 000000000..e1b056b21 --- /dev/null +++ b/sticker-creator/src/components/ArtGrid.tsx @@ -0,0 +1,169 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import createDebug from 'debug'; +import { useDispatch } from 'react-redux'; +import type { ItemInterface } from 'react-sortablejs'; +import { ReactSortable } from 'react-sortablejs'; + +import styles from './ArtGrid.module.scss'; +import artFrameStyles from './ArtFrame.module.scss'; +import type { Props as ArtFrameProps } from './ArtFrame'; +import { ArtFrame } from './ArtFrame'; +import { + addImageData, + addToast, + initializeImages, + removeImage, + setEmoji, + setEmojiName, + setOrder, +} from '../slices/art'; +import { useArtType, useArtData, useArtOrder } from '../selectors/art'; +import type { Props as DropZoneProps } from '../elements/DropZone'; +import { DropZone } from '../elements/DropZone'; +import { assert } from '../util/assert'; +import { processImage, ProcessImageError } from '../util/processImage'; +import { useI18n } from '../contexts/I18n'; +import { ArtType, MAX_STICKERS } from '../constants'; + +const debug = createDebug('signal:components:ArtGrid'); + +type SmartArtFrameProps = Omit & { id: string }; + +function SmartArtFrame({ + artType, + id, + showGuide, + mode, +}: SmartArtFrameProps): JSX.Element | null { + const dispatch = useDispatch(); + const data = useArtData(id); + if (!data) { + return null; + } + + const image = data.imageData ? data.imageData.src : undefined; + + return ( + dispatch(removeImage(...args))} + onPickEmoji={(...args) => dispatch(setEmoji(...args))} + onEmojiNameChange={name => dispatch(setEmojiName({ id, name }))} + emoji={data.emoji} + /> + ); +} + +export type Props = Pick; + +export function ArtGrid({ mode, showGuide }: Props): JSX.Element { + const order = useArtOrder(); + const i18n = useI18n(); + const dispatch = useDispatch(); + const artType = useArtType(); + + const list = React.useMemo(() => { + assert(artType === ArtType.Sticker, 'Unexpected art type'); + const maxImages = MAX_STICKERS; + const entries = order.map(id => ({ id, filtered: false })); + + if (mode === 'add' && order.length !== 0 && order.length < maxImages) { + return [...entries, { id: '', filtered: true }]; + } + return entries; + }, [mode, artType, order]); + + const frameMode = mode === 'add' ? 'removable' : 'pick-emoji'; + + const setList = React.useCallback( + (newList: ReadonlyArray): void => { + const newOrder = newList + .filter(entry => !entry.filtered) + .map(entry => entry.id) + .filter((id: string | number): id is string => typeof id === 'string'); + dispatch(setOrder(newOrder)); + }, + [dispatch] + ); + + const handleDrop = React.useCallback( + async files => { + dispatch(initializeImages(files.map(({ path, name }) => path || name))); + await Promise.all( + files.map(async file => { + try { + const image = await processImage(file, artType); + dispatch(addImageData(image)); + } catch (e) { + debug('Error processing image:', e); + dispatch(removeImage(file.path)); + + const key = + e instanceof ProcessImageError + ? e.errorMessageI18nKey + : 'StickerCreator--Toasts--errorProcessing'; + dispatch( + addToast({ + key, + }) + ); + } + }) + ); + }, + [dispatch, artType] + ); + + if (list.length === 0) { + return ( +
+ +
+ ); + } + + const frames = list.map(({ id, filtered }) => { + if (filtered) { + return ( + + ); + } + return ( + + ); + }); + + return ( + + {frames} + + ); +} diff --git a/sticker-creator/src/components/ArtPackPreview.module.scss b/sticker-creator/src/components/ArtPackPreview.module.scss new file mode 100644 index 000000000..6d144674e --- /dev/null +++ b/sticker-creator/src/components/ArtPackPreview.module.scss @@ -0,0 +1,135 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +@mixin background() { + @include light-theme() { + background: $color-white; + } + + @include dark-theme() { + background: $color-gray-75; + } +} + +.container { + flex-grow: 1; + + display: flex; + flex-direction: column; + max-width: 440px; + height: 360px; + border-radius: 8px; + overflow: hidden; + box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.2); + @include background(); +} + +.title-bar { + height: 36px; + padding: 9px 16px; + display: flex; + flex-direction: row; + align-items: center; + font: { + family: $inter; + size: 14px; + weight: 500; + } + line-height: 18px; + + @include background(); + + @include light-theme { + color: $color-gray-90; + } + + @include dark-theme { + color: $color-gray-05; + } +} + +.scroller { + flex-grow: 1; + overflow: auto; +} + +.grid { + display: flex; + flex-wrap: wrap; + gap: 8px; + padding: 0 16px 0 12px; + overflow: auto; + justify-items: center; + + @include small-screen() { + gap: 4px; + } +} + +.art { + width: 96px; + height: 96px; +} + +.meta { + padding: 18px 16px; + display: flex; + + @include light-theme { + background: $color-white; + } + + @include dark-theme { + background: $color-gray-60; + } +} + +.meta-text { + flex-grow: 1; + + display: flex; + flex-direction: column; + justify-content: center; +} + +.text { + font-family: $inter; +} + +.meta-title { + composes: text; + line-height: 20px; + font: { + size: 14px; + weight: 600; + } + + @include light-theme { + color: $color-gray-95; + } + + @include dark-theme { + color: $color-gray-05; + } +} + +.meta-author { + composes: text; + line-height: 18px; + font: { + size: 13px; + weight: 400; + } + + @include light-theme { + color: $color-gray-60; + } + + @include dark-theme { + color: $color-gray-25; + } +} diff --git a/sticker-creator/src/components/ArtPackPreview.tsx b/sticker-creator/src/components/ArtPackPreview.tsx new file mode 100644 index 000000000..597d57516 --- /dev/null +++ b/sticker-creator/src/components/ArtPackPreview.tsx @@ -0,0 +1,44 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './ArtPackPreview.module.scss'; +import { useI18n } from '../contexts/I18n'; +import { type ArtType } from '../constants'; + +export type Props = { + artType: ArtType; + images: ReadonlyArray; + title: string; + author: string; +}; + +export const ArtPackPreview = React.memo(function ArtPackPreview({ + artType, + images, + title, + author, +}: Props) { + const i18n = useI18n(); + + return ( +
+
+ {i18n(`StickerCreator--Preview--title--${artType}`)} +
+
+
+ {images.map(src => ( + {src} + ))} +
+
+
+
+
{title}
+
{author}
+
+
+
+ ); +}); diff --git a/sticker-creator/src/components/ConfirmModal.module.scss b/sticker-creator/src/components/ConfirmModal.module.scss new file mode 100644 index 000000000..0893b4837 --- /dev/null +++ b/sticker-creator/src/components/ConfirmModal.module.scss @@ -0,0 +1,14 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +.facade { + background: rgba(0, 0, 0, 0.33); + width: 100vw; + height: 100vh; + display: flex; + justify-content: center; + align-items: center; + position: fixed; + left: 0; + top: 0; +} diff --git a/sticker-creator/src/components/ConfirmModal.tsx b/sticker-creator/src/components/ConfirmModal.tsx new file mode 100644 index 000000000..6348aed2d --- /dev/null +++ b/sticker-creator/src/components/ConfirmModal.tsx @@ -0,0 +1,45 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import { createPortal } from 'react-dom'; +import styles from './ConfirmModal.module.scss'; +import type { Props } from '../elements/ConfirmDialog'; +import { ConfirmDialog } from '../elements/ConfirmDialog'; + +export type Mode = 'removable' | 'pick-emoji' | 'add'; + +export const ConfirmModal = React.memo(function ConfirmModalInner( + props: Props & { buttonRef: React.RefObject } +) { + const { buttonRef, onCancel } = props; + const [popperRoot, setPopperRoot] = React.useState(); + + // Create popper root and handle outside clicks + React.useEffect(() => { + const root = document.createElement('div'); + setPopperRoot(root); + document.body.appendChild(root); + const handleOutsideClick = ({ target }: MouseEvent) => { + const node = target as Node; + if (!root.contains(node) && !buttonRef.current?.contains(node)) { + onCancel(); + } + }; + document.addEventListener('click', handleOutsideClick); + + return () => { + document.body.removeChild(root); + document.removeEventListener('click', handleOutsideClick); + }; + }, [onCancel, buttonRef]); + + return popperRoot + ? createPortal( +
+ +
, + popperRoot + ) + : null; +}); diff --git a/sticker-creator/src/components/EmojiPicker.tsx b/sticker-creator/src/components/EmojiPicker.tsx new file mode 100644 index 000000000..08666fa5e --- /dev/null +++ b/sticker-creator/src/components/EmojiPicker.tsx @@ -0,0 +1,59 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import RealEmojiPicker, { + type EmojiClickData, + Categories as EmojiCategories, + EmojiStyle, + Theme, +} from '@indutny/emoji-picker-react'; +import EMOJI_SHEET from '../assets/emoji.webp'; + +import { useI18n } from '../contexts/I18n'; + +const EMOJI_PREVIEW_CONFIG = { showPreview: false }; + +export type EmojiPickerProps = Readonly<{ + onEmojiClick(clickData: EmojiClickData): void; +}>; + +function getEmojiUrl() { + return EMOJI_SHEET; +} + +export default function EmojiPicker({ + onEmojiClick, +}: EmojiPickerProps): JSX.Element { + const i18n = useI18n(); + + const emojiCategories = React.useMemo(() => { + return [ + EmojiCategories.SMILEYS_PEOPLE, + EmojiCategories.ANIMALS_NATURE, + EmojiCategories.FOOD_DRINK, + EmojiCategories.TRAVEL_PLACES, + EmojiCategories.ACTIVITIES, + EmojiCategories.OBJECTS, + EmojiCategories.SYMBOLS, + EmojiCategories.FLAGS, + ].map(category => ({ + category, + + name: i18n(`EmojiPicker--category--${category}`), + })); + }, [i18n]); + + return ( + + ); +} diff --git a/sticker-creator/src/components/Intl.tsx b/sticker-creator/src/components/Intl.tsx new file mode 100644 index 000000000..9f3b484f6 --- /dev/null +++ b/sticker-creator/src/components/Intl.tsx @@ -0,0 +1,136 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import createDebug from 'debug'; + +import type { + LocalizerType, + RenderTextCallbackType, + ReplacementValuesType, +} from '../types.d'; +import { assert } from '../util/assert'; + +const debug = createDebug('signal:components:Intl'); + +export type IntlComponentsType = + | undefined + | ReplacementValuesType; + +export type Props = { + /** The translation string id */ + id: string; + i18n: LocalizerType; + components?: IntlComponentsType; + renderText?: RenderTextCallbackType; +}; + +const defaultRenderText: RenderTextCallbackType = ({ text, key }) => ( + {text} +); + +export class Intl extends React.Component { + public getComponent( + index: number, + placeholderName: string, + key: number + ): JSX.Element | null { + const { id, components } = this.props; + + if (!components) { + debug( + `Error: Intl component prop not provided; Metadata: id '${id}', ` + + `index ${index}, placeholder '${placeholderName}'` + ); + return null; + } + + if (Array.isArray(components)) { + if (!components || !components.length || components.length <= index) { + debug( + `Error: Intl missing provided component for id '${id}', ` + + `index ${index}` + ); + + return null; + } + + return {components[index]}; + } + + const value = components[placeholderName]; + if (!value) { + debug( + `Error: Intl missing provided component for id '${id}', ` + + `placeholder '${placeholderName}'` + ); + + return null; + } + + return {value}; + } + + // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types + public override render() { + const { components, id, i18n, renderText = defaultRenderText } = this.props; + + if (!id) { + debug('Error: Intl id prop not provided'); + return null; + } + + if (!i18n.isLegacyFormat(id)) { + assert( + !Array.isArray(components), + `components cannot be an array for ICU message ${id}` + ); + const intl = i18n.getIntl(); + return intl.formatMessage({ id }, components); + } + + const text = i18n(id); + const results: Array< + string | JSX.Element | Array | null + > = []; + const FIND_REPLACEMENTS = /\$([^$]+)\$/g; + + if (Array.isArray(components) && components.length > 1) { + throw new Error( + 'Array syntax is not supported with more than one placeholder' + ); + } + + let componentIndex = 0; + let key = 0; + let lastTextIndex = 0; + let match = FIND_REPLACEMENTS.exec(text); + + if (!match) { + return renderText({ text, key: 0 }); + } + + while (match) { + if (lastTextIndex < match.index) { + const textWithNoReplacements = text.slice(lastTextIndex, match.index); + results.push(renderText({ text: textWithNoReplacements, key })); + key += 1; + } + + const placeholderName = match[1]; + results.push(this.getComponent(componentIndex, placeholderName, key)); + componentIndex += 1; + key += 1; + + lastTextIndex = FIND_REPLACEMENTS.lastIndex; + match = FIND_REPLACEMENTS.exec(text); + } + + if (lastTextIndex < text.length) { + results.push(renderText({ text: text.slice(lastTextIndex), key })); + key += 1; + } + + return results; + } +} diff --git a/sticker-creator/src/components/PopperRootContext.tsx b/sticker-creator/src/components/PopperRootContext.tsx new file mode 100644 index 000000000..aa43a3246 --- /dev/null +++ b/sticker-creator/src/components/PopperRootContext.tsx @@ -0,0 +1,43 @@ +// Copyright 2020 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; + +const makeApi = (classes?: Array) => ({ + createRoot: () => { + const div = document.createElement('div'); + + if (classes) { + classes.forEach(theme => { + div.classList.add(theme); + }); + } + + document.body.appendChild(div); + + return div; + }, + removeRoot: (root: HTMLElement) => { + document.body.removeChild(root); + }, +}); + +export const PopperRootContext = React.createContext(makeApi()); + +export type ClassyProviderProps = { + classes?: Array; + children?: React.ReactNode; +}; + +export function ClassyProvider({ + classes, + children, +}: ClassyProviderProps): JSX.Element { + const api = React.useMemo(() => makeApi(classes), [classes]); + + return ( + + {children} + + ); +} diff --git a/sticker-creator/src/components/QrCode.module.scss b/sticker-creator/src/components/QrCode.module.scss new file mode 100644 index 000000000..b8a402aa8 --- /dev/null +++ b/sticker-creator/src/components/QrCode.module.scss @@ -0,0 +1,9 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; + +.code { + width: 100%; + max-width: 500px; +} diff --git a/sticker-creator/src/components/QrCode.tsx b/sticker-creator/src/components/QrCode.tsx new file mode 100644 index 000000000..584892081 --- /dev/null +++ b/sticker-creator/src/components/QrCode.tsx @@ -0,0 +1,30 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React, { useMemo } from 'react'; +import qrcode from 'qrcode-generator'; + +import styles from './QrCode.module.scss'; + +const AUTODETECT_TYPE_NUMBER = 0; +const ERROR_CORRECTION_LEVEL = 'L'; + +type PropsType = Readonly<{ + alt: string; + data: string; +}>; + +export function QrCode(props: PropsType): JSX.Element { + const { alt, data } = props; + + const src = useMemo(() => { + const qrCode = qrcode(AUTODETECT_TYPE_NUMBER, ERROR_CORRECTION_LEVEL); + qrCode.addData(data); + qrCode.make(); + + const svgData = qrCode.createSvgTag({ cellSize: 1, margin: 0 }); + return `data:image/svg+xml;utf8,${svgData}`; + }, [data]); + + return {alt}; +} diff --git a/sticker-creator/src/components/ShareButtons.module.scss b/sticker-creator/src/components/ShareButtons.module.scss new file mode 100644 index 000000000..95609e198 --- /dev/null +++ b/sticker-creator/src/components/ShareButtons.module.scss @@ -0,0 +1,30 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; + +.container { + display: flex; + justify-content: center; + gap: 12px; +} + +.text { + @include light-theme() { + border: 1px solid $color-gray-15; + color: $color-gray-90; + } + + @include dark-theme() { + border: 1px solid $color-gray-60; + color: $color-white; + } +} + +.button { + width: 32px; + height: 32px; + background: transparent; + border: none; +} diff --git a/sticker-creator/src/components/ShareButtons.tsx b/sticker-creator/src/components/ShareButtons.tsx new file mode 100644 index 000000000..ed3a93484 --- /dev/null +++ b/sticker-creator/src/components/ShareButtons.tsx @@ -0,0 +1,77 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +/* eslint-disable max-len */ + +import React from 'react'; +import styles from './ShareButtons.module.scss'; +import { useI18n } from '../contexts/I18n'; + +export type Props = { + value: string; +}; + +export const ShareButtons: React.ComponentType = React.memo( + function ShareButtonsInner({ value }) { + const i18n = useI18n(); + + const buttonPaths = React.useMemo< + Array<[string, string, string, string]> + >(() => { + const packUrl = encodeURIComponent(value); + const text = encodeURIComponent( + `${i18n('StickerCreator--ShareStage--socialMessage')} ${value}` + ); + + return [ + // Facebook + [ + i18n('StickerCreator--ShareButtons--facebook'), + '#4267B2', + 'M20.155 10.656l-1.506.001c-1.181 0-1.41.561-1.41 1.384v1.816h2.817l-.367 2.845h-2.45V24h-2.937v-7.298h-2.456v-2.845h2.456V11.76c0-2.435 1.487-3.76 3.658-3.76 1.04 0 1.934.077 2.195.112v2.544z', + `https://www.facebook.com/sharer/sharer.php?u=${packUrl}`, + ], + // Twitter + [ + i18n('StickerCreator--ShareButtons--twitter'), + '#1CA1F2', + 'M22.362 12.737c.006.141.01.282.01.425 0 4.337-3.302 9.339-9.34 9.339A9.294 9.294 0 018 21.027c.257.03.518.045.783.045a6.584 6.584 0 004.077-1.405 3.285 3.285 0 01-3.067-2.279 3.312 3.312 0 001.483-.057 3.283 3.283 0 01-2.633-3.218v-.042c.442.246.949.394 1.487.411a3.282 3.282 0 01-1.016-4.383 9.32 9.32 0 006.766 3.43 3.283 3.283 0 015.593-2.994 6.568 6.568 0 002.085-.796 3.299 3.299 0 01-1.443 1.816A6.587 6.587 0 0024 11.038a6.682 6.682 0 01-1.638 1.699', + `https://twitter.com/intent/tweet?text=${text}`, + ], + // Pinterest + // [ + // i18n('StickerCreator--ShareButtons--pinterest'), + // '#BD081C', + // 'M17.234 19.563c-.992 0-1.926-.536-2.245-1.146 0 0-.534 2.118-.646 2.527-.398 1.444-1.569 2.889-1.66 3.007-.063.083-.203.057-.218-.052-.025-.184-.324-2.007.028-3.493l1.182-5.008s-.293-.587-.293-1.454c0-1.362.789-2.379 1.772-2.379.836 0 1.239.628 1.239 1.38 0 .84-.535 2.097-.811 3.261-.231.975.489 1.77 1.451 1.77 1.74 0 2.913-2.236 2.913-4.886 0-2.014-1.356-3.522-3.824-3.522-2.787 0-4.525 2.079-4.525 4.402 0 .8.237 1.365.607 1.802.17.201.194.282.132.512-.045.17-.145.576-.188.738-.061.233-.249.316-.46.23-1.283-.524-1.882-1.931-1.882-3.511C9.806 11.13 12.008 8 16.374 8c3.51 0 5.819 2.538 5.819 5.265 0 3.605-2.005 6.298-4.959 6.298', + // `https://pinterest.com/pin/create/button/?url=${packUrl}`, + // ], + // Whatsapp + [ + i18n('StickerCreator--ShareButtons--whatsapp'), + '#25D366', + 'M16.033 23.862h-.003a7.914 7.914 0 01-3.79-.965L8.035 24l1.126-4.109a7.907 7.907 0 01-1.059-3.964C8.104 11.556 11.661 8 16.033 8c2.121 0 4.113.826 5.61 2.325a7.878 7.878 0 012.321 5.609c-.002 4.371-3.56 7.928-7.931 7.928zm3.88-5.101c-.165.463-.957.885-1.338.942a2.727 2.727 0 01-1.248-.078 11.546 11.546 0 01-1.13-.418c-1.987-.858-3.286-2.859-3.385-2.991-.1-.132-.81-1.074-.81-2.049 0-.975.513-1.455.695-1.653a.728.728 0 01.528-.248c.132 0 .264.001.38.007.122.006.285-.046.446.34.165.397.56 1.372.61 1.471.05.099.083.215.017.347-.066.132-.1.215-.198.331-.1.115-.208.258-.297.347-.1.098-.203.206-.087.404.116.198.513.847 1.102 1.372.757.675 1.396.884 1.594.984.198.099.314.082.429-.05.116-.132.496-.578.628-.777.132-.198.264-.165.446-.099.18.066 1.156.545 1.354.645.198.099.33.148.38.231.049.083.049.479-.116.942zm-3.877-9.422c-3.636 0-6.594 2.956-6.595 6.589 0 1.245.348 2.458 1.008 3.507l.157.249-.666 2.432 2.495-.654.24.142a6.573 6.573 0 003.355.919h.003a6.6 6.6 0 006.592-6.59 6.55 6.55 0 00-1.93-4.662 6.549 6.549 0 00-4.66-1.932z', + `https://wa.me?text=${text}`, + ], + ]; + }, [i18n, value]); + + return ( +
+ {buttonPaths.map(([title, fill, path, url]) => ( + + ))} +
+ ); + } +); diff --git a/sticker-creator/src/components/Toaster.tsx b/sticker-creator/src/components/Toaster.tsx new file mode 100644 index 000000000..b607c4435 --- /dev/null +++ b/sticker-creator/src/components/Toaster.tsx @@ -0,0 +1,47 @@ +// Copyright 2020 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import { noop } from '../util/noop'; +import { Toast } from '../elements/Toast'; + +export type Props = React.HTMLAttributes & { + loaf: Array<{ id: number; text: string }>; + onDismiss: () => unknown; +}; + +const DEFAULT_DISMISS = 1e4; + +export const Toaster = React.memo(function ToasterInner({ + loaf, + onDismiss, + className, +}: Props) { + const slice = loaf[loaf.length - 1]; + + React.useEffect(() => { + if (!slice) { + return noop; + } + + const timer = setTimeout(() => { + onDismiss(); + }, DEFAULT_DISMISS); + + return () => { + clearTimeout(timer); + }; + }, [slice, onDismiss]); + + if (!slice) { + return null; + } + + return ( +
+ + {slice.text} + +
+ ); +}); diff --git a/sticker-creator/src/constants.ts b/sticker-creator/src/constants.ts new file mode 100644 index 000000000..3129304d0 --- /dev/null +++ b/sticker-creator/src/constants.ts @@ -0,0 +1,15 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +export const MIN_IMAGE_SIZE = 10; +export const STICKER_SIZE = 512; +export const MIN_STICKERS = 1; +export const MAX_STICKERS = 200; +export const MAX_STICKER_BYTE_SIZE = 300 * 1024; + +export const SECOND = 1000; +export const MINUTE = 60 * SECOND; + +export enum ArtType { + Sticker = 'sticker', +} diff --git a/sticker-creator/src/contexts/I18n.tsx b/sticker-creator/src/contexts/I18n.tsx new file mode 100644 index 000000000..32fc381a5 --- /dev/null +++ b/sticker-creator/src/contexts/I18n.tsx @@ -0,0 +1,120 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import * as React from 'react'; +import createDebug from 'debug'; +import type { + LocaleMessagesType, + LocalizerType, + ReplacementValuesType, +} from '../types.d'; +import { + classifyMessages, + createCachedIntl, + formatIcuMessage, +} from '../util/i18n'; + +const debug = createDebug('signal:components:I18n'); + +const placeholder = () => 'NO LOCALE LOADED'; +placeholder.getLocale = () => 'none'; +placeholder.isLegacyFormat = () => { + throw new Error("Can't call isLegacyFormat on placeholder"); +}; +placeholder.getIntl = () => { + throw new Error("Can't call getIntl on placeholder"); +}; + +const I18nContext = React.createContext(placeholder); + +export type I18nProps = { + children: React.ReactNode; + locale: string; + messages: LocaleMessagesType; +}; + +export function I18n({ messages, locale, children }: I18nProps): JSX.Element { + const { icuMessages, legacyMessages } = React.useMemo(() => { + return classifyMessages(messages); + }, [messages]); + const intl = React.useMemo(() => { + return createCachedIntl(locale, icuMessages); + }, [locale, icuMessages]); + + const callback = (key: string, substitutions?: ReplacementValuesType) => { + if (Array.isArray(substitutions) && substitutions.length > 1) { + throw new Error( + 'Array syntax is not supported with more than one placeholder' + ); + } + + const messageformat = icuMessages[key]; + if (messageformat != null) { + return formatIcuMessage(intl, key, substitutions); + } + + const message = legacyMessages[key]; + if (message == null) { + debug(`getMessage: No string found for key ${key}`); + return ''; + } + if (!substitutions) { + return message; + } + if (Array.isArray(substitutions)) { + return substitutions.reduce( + (result, substitution) => + result.toString().replace(/\$.+?\$/, substitution.toString()), + message + ) as string; + } + + const FIND_REPLACEMENTS = /\$([^$]+)\$/g; + + let match = FIND_REPLACEMENTS.exec(message); + let builder = ''; + let lastTextIndex = 0; + + while (match) { + if (lastTextIndex < match.index) { + builder += message.slice(lastTextIndex, match.index); + } + + const placeholderName = match[1]; + const value = substitutions[placeholderName]; + if (!value) { + debug( + `i18n: Value not provided for placeholder ${placeholderName} ` + + `in key '${key}'` + ); + } + builder += value || ''; + + lastTextIndex = FIND_REPLACEMENTS.lastIndex; + match = FIND_REPLACEMENTS.exec(message); + } + + if (lastTextIndex < message.length) { + builder += message.slice(lastTextIndex); + } + + return builder; + }; + callback.getLocale = () => locale; + callback.isLegacyFormat = (key: string) => { + return legacyMessages[key] != null; + }; + callback.getIntl = () => intl; + + const getMessage = React.useCallback(callback, [ + icuMessages, + legacyMessages, + intl, + ]); + + return ( + {children} + ); +} + +export const useI18n = (): LocalizerType => React.useContext(I18nContext); diff --git a/sticker-creator/src/elements/Button.module.scss b/sticker-creator/src/elements/Button.module.scss new file mode 100644 index 000000000..1bfd60cc0 --- /dev/null +++ b/sticker-creator/src/elements/Button.module.scss @@ -0,0 +1,121 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +.base { + border: none; + min-width: 80px; + height: 36px; + padding: 0 25px; + border-radius: 4px; + display: flex; + justify-content: center; + align-items: center; + font-family: $inter; + font-weight: normal; + font-size: 14px; + white-space: nowrap; + + @include light-theme() { + background-color: $color-gray-05; + color: $color-gray-90; + } + + @include dark-theme() { + background-color: $color-gray-65; + color: $color-gray-05; + } + + &:hover { + @include light-theme() { + background-color: mix($color-black, $color-gray-05, 15%); + } + + @include dark-theme() { + background-color: mix($color-white, $color-gray-65, 15%); + } + } + + &:active { + @include light-theme() { + background-color: mix($color-black, $color-gray-05, 25%); + } + @include dark-theme() { + background-color: mix($color-white, $color-gray-65, 25%); + } + } + + &:disabled { + opacity: 0.4; + } +} + +.primary { + composes: base; + background-color: $color-ultramarine; + + @include light-theme() { + color: $color-white; + } + + @include dark-theme() { + color: $color-white; + } + + &:hover { + @include light-theme() { + background-color: mix($color-black, $color-ultramarine, 15%); + } + + @include dark-theme() { + background-color: mix($color-white, $color-ultramarine, 15%); + } + } + + &:active { + @include light-theme() { + background-color: mix($color-black, $color-ultramarine, 25%); + } + @include dark-theme() { + background-color: mix($color-white, $color-ultramarine, 25%); + } + } +} + +.pill { + composes: base; + height: 28px; + border-radius: 15px; + padding: 0 17px; + + @include light-theme() { + color: $color-gray-90; + border: 1px solid $color-gray-90; + background: transparent; + } + + @include dark-theme() { + color: $color-white; + border: 1px solid $color-white; + background: transparent; + } +} + +.pill-primary { + composes: pill; + + @include light-theme() { + border: none; + background-color: $color-ultramarine; + color: $color-white; + } + + @include dark-theme() { + border: none; + background-color: $color-ultramarine-light; + color: $color-white; + } +} diff --git a/sticker-creator/src/elements/Button.tsx b/sticker-creator/src/elements/Button.tsx new file mode 100644 index 000000000..b025e509f --- /dev/null +++ b/sticker-creator/src/elements/Button.tsx @@ -0,0 +1,51 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import classnames from 'classnames'; + +import styles from './Button.module.scss'; + +export type Props = React.ButtonHTMLAttributes & { + pill?: boolean; + primary?: boolean; + buttonRef?: React.RefObject; +}; + +const getClassName = ({ primary, pill }: Props) => { + if (pill && primary) { + return styles.pillPrimary; + } + + if (pill) { + return styles.pill; + } + + if (primary) { + return styles.primary; + } + + return styles.base; +}; + +export function Button({ + className, + children, + buttonRef, + primary, + ...otherProps +}: React.PropsWithChildren): JSX.Element { + return ( + + ); +} diff --git a/sticker-creator/src/elements/ConfirmDialog.module.scss b/sticker-creator/src/elements/ConfirmDialog.module.scss new file mode 100644 index 000000000..d938e98ea --- /dev/null +++ b/sticker-creator/src/elements/ConfirmDialog.module.scss @@ -0,0 +1,102 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +.base { + max-width: 468px; + width: 100%; + height: 138px; + padding: 16px 16px 8px 16px; + display: flex; + flex-direction: column; + border-radius: 8px; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08), 0 8px 20px 0 rgba(0, 0, 0, 0.33); + + @include light-theme() { + background: $color-white; + } + + @include dark-theme() { + background: $color-gray-75; + } +} + +.grow { + flex-grow: 1; +} + +.text { + font: { + family: $inter; + size: 14px; + } + margin: 0; + + @include light-theme() { + color: $color-gray-90; + } + + @include dark-theme() { + color: $color-gray-05; + } +} + +.title { + composes: text; + font-weight: 500; + margin-bottom: 12px; + + @include light-theme() { + color: $color-gray-90; + } + + @include dark-theme() { + color: $color-white; + } +} + +.bottom { + display: flex; + flex-direction: row; + justify-content: flex-end; + align-content: flex-end; + gap: 12px; +} + +.pill { + composes: base; + height: 28px; + border-radius: 15px; + padding: 0 17px; + + @include light-theme() { + color: $color-gray-90; + border: 1px solid $color-gray-90; + background: transparent; + } + + @include dark-theme() { + color: $color-white; + border: 1px solid $color-white; + background: transparent; + } +} + +.pill-primary { + composes: pill; + + @include light-theme() { + border: none; + background-color: $color-ultramarine; + color: $color-white; + } + + @include dark-theme() { + border: none; + background-color: $color-ultramarine-light; + color: $color-white; + } +} diff --git a/sticker-creator/src/elements/ConfirmDialog.tsx b/sticker-creator/src/elements/ConfirmDialog.tsx new file mode 100644 index 000000000..63746d04e --- /dev/null +++ b/sticker-creator/src/elements/ConfirmDialog.tsx @@ -0,0 +1,43 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; + +import { useI18n } from '../contexts/I18n'; +import styles from './ConfirmDialog.module.scss'; +import { Button } from './Button'; + +export type Props = Readonly<{ + title: string; + children: React.ReactNode; + confirm: string; + onConfirm: () => unknown; + cancel?: string; + onCancel: () => unknown; +}>; + +export function ConfirmDialog({ + title, + children, + confirm, + cancel, + onConfirm, + onCancel, +}: Props): JSX.Element { + const i18n = useI18n(); + const cancelText = cancel || i18n('StickerCreator--ConfirmDialog--cancel'); + + return ( +
+

{title}

+

{children}

+
+
+ + +
+
+ ); +} diff --git a/sticker-creator/src/elements/CopyText.module.scss b/sticker-creator/src/elements/CopyText.module.scss new file mode 100644 index 000000000..f415641f9 --- /dev/null +++ b/sticker-creator/src/elements/CopyText.module.scss @@ -0,0 +1,41 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; +@import '../fonts.scss'; + +.container { + flex-grow: 1; + + display: flex; + flex-direction: row; + align-items: center; + max-width: 440px; + gap: 12px; +} + +.input { + flex-grow: 1; + height: 36px; + line-height: 34px; + padding: 0 12px; + border-radius: 4px; + background-color: transparent; + font-size: 14px; + font-family: $inter; + + &::placeholder { + color: $color-gray-45; + } + + @include light-theme() { + border: 1px solid $color-gray-15; + color: $color-gray-90; + } + + @include dark-theme() { + border: 1px solid $color-gray-60; + color: $color-white; + } +} diff --git a/sticker-creator/src/elements/CopyText.tsx b/sticker-creator/src/elements/CopyText.tsx new file mode 100644 index 000000000..5833d24fd --- /dev/null +++ b/sticker-creator/src/elements/CopyText.tsx @@ -0,0 +1,40 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './CopyText.module.scss'; +import { Button } from './Button'; +import { useI18n } from '../contexts/I18n'; + +export type Props = { + value: string; + label: string; + onCopy?: () => unknown; +}; + +export const CopyText: React.ComponentType = React.memo( + function CopyTextInner({ label, onCopy, value }) { + const i18n = useI18n(); + const handleClick = React.useCallback(() => { + navigator.clipboard.writeText(value); + if (onCopy) { + onCopy(); + } + }, [onCopy, value]); + + return ( +
+ + +
+ ); + } +); diff --git a/sticker-creator/src/elements/DropZone.module.scss b/sticker-creator/src/elements/DropZone.module.scss new file mode 100644 index 000000000..029f6f7ad --- /dev/null +++ b/sticker-creator/src/elements/DropZone.module.scss @@ -0,0 +1,69 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; +@import '../fonts.scss'; + +.base { + width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + flex-grow: 1; + + @include light-theme() { + color: $color-gray-60; + } + + @include dark-theme() { + color: $color-gray-45; + } +} + +.text { + margin: 16px 0 0 0; + font-family: $inter; + font-size: 14px; + font-weight: normal; + + @include light-theme() { + color: $color-gray-60; + } + + @include dark-theme() { + color: $color-gray-45; + } +} + +.standalone { + composes: base; + border-radius: 12px; + border: 0; + + @include light-theme() { + background: $color-gray-02; + color: $color-gray-60; + } + + @include dark-theme() { + background: $color-gray-80; + color: $color-gray-25; + } +} + +.active { + composes: standalone; + + @include light-theme() { + border-color: $color-ultramarine; + outline: 3px solid $color-ultramarine; + } + + @include dark-theme() { + border-color: $color-ultramarine-light; + outline: 3px solid $color-ultramarine-light; + } +} diff --git a/sticker-creator/src/elements/DropZone.tsx b/sticker-creator/src/elements/DropZone.tsx new file mode 100644 index 000000000..8a4b578e8 --- /dev/null +++ b/sticker-creator/src/elements/DropZone.tsx @@ -0,0 +1,74 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import type { FileWithPath } from 'react-dropzone'; + +import styles from './DropZone.module.scss'; +import { useI18n } from '../contexts/I18n'; +import { useStickerDropzone } from '../util/useStickerDropzone'; +import type { FileWithRequiredPath } from '../types.d'; + +export type Props = { + readonly inner?: boolean; + readonly label: string; + onDrop(files: ReadonlyArray): unknown; + onDragActive?(active: boolean): unknown; +}; + +const getClassName = ({ inner }: Props, isDragActive: boolean) => { + if (inner) { + return styles.base; + } + + if (isDragActive) { + return styles.active; + } + + return styles.standalone; +}; + +export function DropZone(props: Props): JSX.Element { + const { inner, label, onDrop, onDragActive } = props; + const i18n = useI18n(); + + const handleDrop = React.useCallback( + (files: ReadonlyArray) => { + onDrop( + files.filter( + (file): file is FileWithRequiredPath => file.path !== undefined + ) + ); + }, + [onDrop] + ); + + const { getRootProps, getInputProps, isDragActive } = + useStickerDropzone(handleDrop); + + React.useEffect(() => { + if (onDragActive) { + onDragActive(isDragActive); + } + }, [isDragActive, onDragActive]); + + return ( +
+ + + + + {!inner ? ( +

+ {isDragActive + ? i18n('StickerCreator--DropZone--activeText') + : i18n('StickerCreator--DropZone--staticText')} +

+ ) : null} +
+ ); +} diff --git a/sticker-creator/src/elements/LabeledCheckbox.module.scss b/sticker-creator/src/elements/LabeledCheckbox.module.scss new file mode 100644 index 000000000..add576115 --- /dev/null +++ b/sticker-creator/src/elements/LabeledCheckbox.module.scss @@ -0,0 +1,60 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; + +.base { + display: flex; + flex-direction: row; + align-items: center; + + padding: 2px; + + // We'd really like to use focus-within-visible or :has(:focus-visible), to ensure that + // this doesn't show when using the mouse, but neither are ready yet! + &:has(:focus-visible) { + outline: 2px solid -webkit-focus-ring-color; + } +} + +.input { + position: absolute; + width: 0; + height: 0; + opacity: 0; +} + +.checkbox { + width: 18px; + height: 18px; + border-radius: 2px; + display: flex; + justify-content: center; + align-items: center; + border: { + width: 2px; + style: solid; + } + + @include light-theme() { + border-color: $color-gray-60; + } + + @include dark-theme() { + border-color: $color-gray-25; + } +} + +.checkbox-checked { + composes: checkbox; + border: none; + background-color: $color-ultramarine; + color: $color-white; +} + +.label { + margin-left: 11px; + position: relative; + user-select: none; +} diff --git a/sticker-creator/src/elements/LabeledCheckbox.tsx b/sticker-creator/src/elements/LabeledCheckbox.tsx new file mode 100644 index 000000000..b35ec2746 --- /dev/null +++ b/sticker-creator/src/elements/LabeledCheckbox.tsx @@ -0,0 +1,46 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './LabeledCheckbox.module.scss'; +import { Inline } from './Typography'; + +export type Props = { + children: React.ReactNode; + value?: boolean; + onChange?: (value: boolean) => unknown; +}; + +const checkSvg = ( + + + +); + +export const LabeledCheckbox = React.memo(function LabeledCheckboxInner({ + children, + value, + onChange, +}: Props) { + const handleChange = React.useCallback(() => { + if (onChange !== undefined) { + onChange(!value); + } + }, [onChange, value]); + + const className = value ? styles.checkboxChecked : styles.checkbox; + + return ( + + ); +}); diff --git a/sticker-creator/src/elements/LabeledInput.module.scss b/sticker-creator/src/elements/LabeledInput.module.scss new file mode 100644 index 000000000..4f3f5bf56 --- /dev/null +++ b/sticker-creator/src/elements/LabeledInput.module.scss @@ -0,0 +1,60 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; +@import '../fonts.scss'; + +.container { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: space-between; + height: 56px; +} + +.label { + user-select: none; + font-size: 13px; + font-family: $inter; + font-weight: 500; +} + +.input { + max-width: 448px; + width: 100%; + height: 34px; + line-height: 34px; + padding: 0 12px; + border-radius: 4px; + background-color: transparent; + font-size: 14px; + font-family: $inter; + + &::placeholder { + color: $color-gray-45; + } + + @include light-theme() { + border: 1px solid $color-gray-15; + color: $color-gray-90; + } + + @include dark-theme() { + border: 1px solid $color-gray-60; + color: $color-white; + } + + &:focus { + outline: none; + padding: 0 11px; + + @include light-theme() { + border: 2px solid $color-ultramarine; + } + + @include dark-theme() { + border: 2px solid $color-ultramarine-light; + } + } +} diff --git a/sticker-creator/src/elements/LabeledInput.tsx b/sticker-creator/src/elements/LabeledInput.tsx new file mode 100644 index 000000000..ac0149fe2 --- /dev/null +++ b/sticker-creator/src/elements/LabeledInput.tsx @@ -0,0 +1,42 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './LabeledInput.module.scss'; +import { Inline } from './Typography'; + +export type Props = { + children: React.ReactNode; + placeholder?: string; + value?: string; + onChange?: (value: string) => unknown; +}; + +export const LabeledInput = React.memo(function LabeledInputInner({ + children, + value, + placeholder, + onChange, +}: Props) { + const handleChange = React.useCallback( + (e: React.ChangeEvent) => { + if (onChange !== undefined) { + onChange(e.currentTarget.value); + } + }, + [onChange] + ); + + return ( + + ); +}); diff --git a/sticker-creator/src/elements/MessageBubble.module.scss b/sticker-creator/src/elements/MessageBubble.module.scss new file mode 100644 index 000000000..190755bb7 --- /dev/null +++ b/sticker-creator/src/elements/MessageBubble.module.scss @@ -0,0 +1,17 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../fonts.scss'; + +.base { + background-color: $color-ultramarine; + padding: 6px 12px; + border-radius: 18px; + color: $color-white-alpha-90; + font: { + size: 12px; + family: $inter; + weight: normal; + } +} diff --git a/sticker-creator/src/elements/MessageBubble.tsx b/sticker-creator/src/elements/MessageBubble.tsx new file mode 100644 index 000000000..f9d9a017b --- /dev/null +++ b/sticker-creator/src/elements/MessageBubble.tsx @@ -0,0 +1,20 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './MessageBubble.module.scss'; +import type { Props as MessageMetaProps } from './MessageMeta'; +import { MessageMeta } from './MessageMeta'; + +export type Props = Pick & { + children: React.ReactNode; +}; + +export function MessageBubble({ children, minutesAgo }: Props): JSX.Element { + return ( +
+ {children} + +
+ ); +} diff --git a/sticker-creator/src/elements/MessageMeta.module.scss b/sticker-creator/src/elements/MessageMeta.module.scss new file mode 100644 index 000000000..764f7f043 --- /dev/null +++ b/sticker-creator/src/elements/MessageMeta.module.scss @@ -0,0 +1,37 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +.base { + display: flex; + flex-direction: row; + justify-content: flex-end; + margin-top: 3px; +} + +.item { + margin-left: 6px; + font: { + size: 11px; + family: $inter; + weight: normal; + } +} + +.bubble { + composes: item; + color: rgba(255, 255, 255, 0.8); +} + +.light { + composes: item; + color: $color-gray-60; +} + +.dark { + composes: item; + color: rgba(255, 255, 255, 0.8); +} diff --git a/sticker-creator/src/elements/MessageMeta.tsx b/sticker-creator/src/elements/MessageMeta.tsx new file mode 100644 index 000000000..60adf3c2a --- /dev/null +++ b/sticker-creator/src/elements/MessageMeta.tsx @@ -0,0 +1,59 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './MessageMeta.module.scss'; +import { useI18n } from '../contexts/I18n'; + +export type Props = { + kind?: 'bubble' | 'dark' | 'light'; + minutesAgo: number; +}; + +const getItemClass = ({ kind }: Props) => { + if (kind === 'dark') { + return styles.dark; + } + + if (kind === 'light') { + return styles.light; + } + + return styles.bubble; +}; + +export const MessageMeta = React.memo(function MessageMetaInner(props: Props) { + const i18n = useI18n(); + const itemClass = getItemClass(props); + + return ( +
+ + + + + + +
+ {i18n('minutesAgo', { minutes: props.minutesAgo })} +
+ + + + + + + + + + + + + + +
+ ); +}); diff --git a/sticker-creator/src/elements/MessageSticker.module.scss b/sticker-creator/src/elements/MessageSticker.module.scss new file mode 100644 index 000000000..01ba728cf --- /dev/null +++ b/sticker-creator/src/elements/MessageSticker.module.scss @@ -0,0 +1,11 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +.base { + padding: 6px 12px; +} + +.image { + width: 116px; + height: 116px; +} diff --git a/sticker-creator/src/elements/MessageSticker.tsx b/sticker-creator/src/elements/MessageSticker.tsx new file mode 100644 index 000000000..9f1924a07 --- /dev/null +++ b/sticker-creator/src/elements/MessageSticker.tsx @@ -0,0 +1,24 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './MessageSticker.module.scss'; +import type { Props as MessageMetaProps } from './MessageMeta'; +import { MessageMeta } from './MessageMeta'; + +export type Props = MessageMetaProps & { + image: string; +}; + +export function MessageSticker({ + image, + kind, + minutesAgo, +}: Props): JSX.Element { + return ( +
+ Sticker + +
+ ); +} diff --git a/sticker-creator/src/elements/PageHeader.module.scss b/sticker-creator/src/elements/PageHeader.module.scss new file mode 100644 index 000000000..117e0bac1 --- /dev/null +++ b/sticker-creator/src/elements/PageHeader.module.scss @@ -0,0 +1,44 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; + +.container { +} + +.header { + height: 96px; + margin-bottom: 30px; + border-bottom-width: 1px; + border-bottom-style: solid; + padding: 0 64px; + @include small-screen() { + padding: 0 32px; + } + display: flex; + flex-direction: row; + align-items: center; + flex-shrink: 0; + + @include light-theme() { + border-bottom-color: $color-gray-15; + } + + @include dark-theme() { + border-bottom-color: $color-gray-75; + } +} + +.guidelines { + text-decoration: none; + padding: 12px 16px; +} + +.icon { + margin-right: 8px; +} + +.grow { + flex-grow: 1; +} diff --git a/sticker-creator/src/elements/PageHeader.tsx b/sticker-creator/src/elements/PageHeader.tsx new file mode 100644 index 000000000..9da8f02f4 --- /dev/null +++ b/sticker-creator/src/elements/PageHeader.tsx @@ -0,0 +1,36 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import logoUrl from '../assets/signal.svg'; + +import { useI18n } from '../contexts/I18n'; +import { H1 } from './Typography'; + +import styles from './PageHeader.module.scss'; + +export function PageHeader(): JSX.Element { + const i18n = useI18n(); + + return ( +
+ {i18n('StickerCreator--title--icon')} +

{i18n('StickerCreator--title--sticker')}

+ + ); +} diff --git a/sticker-creator/src/elements/ProgressBar.module.scss b/sticker-creator/src/elements/ProgressBar.module.scss new file mode 100644 index 000000000..532922b88 --- /dev/null +++ b/sticker-creator/src/elements/ProgressBar.module.scss @@ -0,0 +1,27 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; + +.base { + height: 4px; + width: 100%; + max-width: 448px; + + @include light-theme() { + background: $color-gray-15; + } + + @include dark-theme() { + background: $color-gray-75; + } +} + +.bar { + height: 4px; + width: 0px; + background: $color-ultramarine; + + transition: width 100ms ease-out; +} diff --git a/sticker-creator/src/elements/ProgressBar.tsx b/sticker-creator/src/elements/ProgressBar.tsx new file mode 100644 index 000000000..520a3d051 --- /dev/null +++ b/sticker-creator/src/elements/ProgressBar.tsx @@ -0,0 +1,27 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import classnames from 'classnames'; + +import styles from './ProgressBar.module.scss'; + +export type Props = Pick, 'className'> & { + readonly count: number; + readonly total: number; +}; + +export const ProgressBar = React.memo(function ProgressBarInner({ + className, + count, + total, +}: Props) { + return ( +
+
+
+ ); +}); diff --git a/sticker-creator/src/elements/Spinner.module.scss b/sticker-creator/src/elements/Spinner.module.scss new file mode 100644 index 000000000..e18b0cdbb --- /dev/null +++ b/sticker-creator/src/elements/Spinner.module.scss @@ -0,0 +1,12 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@keyframes spin { + to { + transform: rotate(360deg); + } +} + +.spinner { + animation: spin 1s linear infinite; +} diff --git a/sticker-creator/src/elements/Spinner.tsx b/sticker-creator/src/elements/Spinner.tsx new file mode 100644 index 000000000..c9176c0be --- /dev/null +++ b/sticker-creator/src/elements/Spinner.tsx @@ -0,0 +1,18 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; + +import styles from './Spinner.module.scss'; + +export type Props = Readonly<{ + size: number; +}>; + +export function Spinner({ size }: Props): JSX.Element { + return ( + + + + ); +} diff --git a/sticker-creator/src/elements/StickerPreview.module.scss b/sticker-creator/src/elements/StickerPreview.module.scss new file mode 100644 index 000000000..229ee87af --- /dev/null +++ b/sticker-creator/src/elements/StickerPreview.module.scss @@ -0,0 +1,103 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; + +.base { + width: 380px; + padding: 4px; + display: flex; + flex-direction: row; + border-radius: 8px; + box-shadow: 0 2px 13px 3px rgba(0, 0, 0, 0.3); + position: relative; + + @include light-theme() { + background: $color-white; + } + + @include dark-theme() { + background: $color-gray-75; + } +} + +.frame { + width: 50%; + padding: 12px 12px 3px 12px; +} + +.frame-light { + composes: frame; + background: $color-white; + border-radius: 6px 0 0 6px; +} + +.frame-dark { + composes: frame; + background: $color-black; + border-radius: 0 6px 6px 0; +} + +.arrow { + position: absolute; + width: 0; + height: 0; + border-style: solid; +} + +.arrow-top { + composes: arrow; + border-width: 0 8px 8px 8px; + top: -8px; + + @include light-theme() { + border-color: transparent transparent $color-white transparent; + } + + @include dark-theme() { + border-color: transparent transparent $color-gray-75 transparent; + } +} + +.arrow-bottom { + composes: arrow; + border-width: 8px 8px 0 8px; + bottom: -8px; + + @include light-theme() { + border-color: $color-white transparent transparent transparent; + } + + @include dark-theme() { + border-color: $color-gray-75 transparent transparent transparent; + } +} + +.arrow-left { + composes: arrow; + border-width: 8px 8px 8px 0; + left: -8px; + + @include light-theme() { + border-color: transparent $color-white transparent transparent; + } + + @include dark-theme() { + border-color: transparent $color-gray-75 transparent transparent; + } +} + +.arrow-right { + composes: arrow; + border-width: 8px 0 8px 8px; + right: -8px; + + @include light-theme() { + border-color: transparent transparent transparent $color-white; + } + + @include dark-theme() { + border-color: transparent transparent transparent $color-gray-75; + } +} diff --git a/sticker-creator/src/elements/StickerPreview.tsx b/sticker-creator/src/elements/StickerPreview.tsx new file mode 100644 index 000000000..bcda73472 --- /dev/null +++ b/sticker-creator/src/elements/StickerPreview.tsx @@ -0,0 +1,78 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import type { PopperArrowProps } from 'react-popper'; +import type { Placement } from '@popperjs/core'; +import styles from './StickerPreview.module.scss'; +import { MessageBubble } from './MessageBubble'; +import type { Props as MessageStickerProps } from './MessageSticker'; +import { MessageSticker } from './MessageSticker'; +import { useI18n } from '../contexts/I18n'; + +export type Props = Pick, 'style'> & { + image: string; + arrowProps?: PopperArrowProps; + placement?: Placement; +}; + +const renderMessages = ( + text: string, + image: string, + kind: MessageStickerProps['kind'] +) => ( + <> + {text} + + +); + +const getArrowClass = (placement?: Placement) => { + if (placement === 'top') { + return styles.arrowBottom; + } + + if (placement === 'right') { + return styles.arrowLeft; + } + + if (placement === 'left') { + return styles.arrowRight; + } + + return styles.arrowTop; +}; + +export const StickerPreview = React.memo( + React.forwardRef( + ({ image, style, arrowProps, placement }: Props, ref) => { + const i18n = useI18n(); + + return ( +
+ {arrowProps ? ( +
+ ) : null} +
+ {renderMessages( + i18n('StickerCreator--StickerPreview--light'), + image, + 'light' + )} +
+
+ {renderMessages( + i18n('StickerCreator--StickerPreview--dark'), + image, + 'dark' + )} +
+
+ ); + } + ) +); diff --git a/sticker-creator/src/elements/StoryRow.module.scss b/sticker-creator/src/elements/StoryRow.module.scss new file mode 100644 index 000000000..f5e835bc1 --- /dev/null +++ b/sticker-creator/src/elements/StoryRow.module.scss @@ -0,0 +1,31 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +.base { + flex: 1; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + width: 100%; +} + +.left { + composes: base; + justify-content: flex-start; +} + +.right { + composes: base; + justify-content: flex-end; +} + +.top { + composes: base; + align-items: flex-start; +} + +.bottom { + composes: base; + align-items: flex-end; +} diff --git a/sticker-creator/src/elements/StoryRow.tsx b/sticker-creator/src/elements/StoryRow.tsx new file mode 100644 index 000000000..599ddd5bd --- /dev/null +++ b/sticker-creator/src/elements/StoryRow.tsx @@ -0,0 +1,39 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import styles from './StoryRow.module.scss'; + +type Props = { + left?: boolean; + right?: boolean; + top?: boolean; + bottom?: boolean; +}; + +const getClassName = ({ left, right, top, bottom }: Props) => { + if (left) { + return styles.left; + } + + if (right) { + return styles.right; + } + + if (top) { + return styles.top; + } + + if (bottom) { + return styles.bottom; + } + + return styles.base; +}; + +export function StoryRow({ + children, + ...props +}: React.PropsWithChildren): JSX.Element { + return
{children}
; +} diff --git a/sticker-creator/src/elements/Toast.module.scss b/sticker-creator/src/elements/Toast.module.scss new file mode 100644 index 000000000..c611ebb35 --- /dev/null +++ b/sticker-creator/src/elements/Toast.module.scss @@ -0,0 +1,28 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../mixins.scss'; +@import '../colors.scss'; +@import '../fonts.scss'; + +.base { + padding: 8px 12px; + border-radius: 4px; + border: none; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08), 0 8px 20px 0px rgba(0, 0, 0, 0.33); + font-family: $inter; + font-weight: normal; + font-size: 14px; + line-height: 18px; + cursor: pointer; + + @include light-theme() { + background-color: $color-gray-75; + color: $color-gray-05; + } + + @include dark-theme() { + background-color: $color-gray-15; + color: $color-gray-95; + } +} diff --git a/sticker-creator/src/elements/Toast.tsx b/sticker-creator/src/elements/Toast.tsx new file mode 100644 index 000000000..b3c8ed9a8 --- /dev/null +++ b/sticker-creator/src/elements/Toast.tsx @@ -0,0 +1,26 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import classNames from 'classnames'; +import styles from './Toast.module.scss'; + +export type Props = React.HTMLAttributes & { + children: React.ReactNode; +}; + +export const Toast = React.memo(function ToastInner({ + children, + className, + ...rest +}: Props) { + return ( + + ); +}); diff --git a/sticker-creator/src/elements/Typography.module.scss b/sticker-creator/src/elements/Typography.module.scss new file mode 100644 index 000000000..dac0ac593 --- /dev/null +++ b/sticker-creator/src/elements/Typography.module.scss @@ -0,0 +1,79 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import '../colors.scss'; +@import '../mixins.scss'; +@import '../fonts.scss'; + +.base { + font-family: $inter; + margin: 0; +} + +.heading { + composes: base; + font-weight: 500; +} + +.h1 { + composes: heading; + font-size: 16px; + line-height: 20px; + + @include light-theme() { + color: $color-gray-90; + } + + @include dark-theme() { + color: $color-gray-05; + } +} + +.h2 { + composes: heading; + font-size: 14px; + line-height: 18px; + margin-bottom: 8px; + + @include light-theme() { + color: $color-gray-90; + } + + @include dark-theme() { + color: $color-white; + } +} + +.text { + composes: base; + font-size: 13px; + line-height: 18px; + + @include light-theme() { + color: $color-gray-90; + } + + @include dark-theme() { + color: $color-white; + } + + a { + color: $color-ultramarine; + text-decoration: none; + } +} + +.text-center { + composes: text; + text-align: center; +} + +.secondary { + @include light-theme() { + color: $color-gray-60; + } + + @include dark-theme() { + color: $color-gray-25; + } +} diff --git a/sticker-creator/src/elements/Typography.tsx b/sticker-creator/src/elements/Typography.tsx new file mode 100644 index 000000000..313606ff0 --- /dev/null +++ b/sticker-creator/src/elements/Typography.tsx @@ -0,0 +1,76 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import classnames from 'classnames'; + +import styles from './Typography.module.scss'; + +export type Props = { + children: React.ReactNode; +}; + +export type HeadingProps = React.HTMLAttributes; +export type ParagraphProps = React.HTMLAttributes & { + center?: boolean; + wide?: boolean; + secondary?: boolean; +}; +export type SpanProps = React.HTMLAttributes; + +export const H1 = React.memo(function H1Inner({ + children, + className, + ...rest +}: Props & HeadingProps) { + return ( +

+ {children} +

+ ); +}); + +export const H2 = React.memo(function H2Inner({ + children, + className, + ...rest +}: Props & HeadingProps) { + return ( +

+ {children} +

+ ); +}); + +export const Text = React.memo(function TextInner({ + children, + className, + center, + secondary, + ...rest +}: Props & ParagraphProps) { + return ( +

+ {children} +

+ ); +}); + +export const Inline = React.memo(function InlineInner({ + children, + className, + ...rest +}: Props & SpanProps) { + return ( + + {children} + + ); +}); diff --git a/sticker-creator/src/elements/icons/AddEmoji.tsx b/sticker-creator/src/elements/icons/AddEmoji.tsx new file mode 100644 index 000000000..e209c4bcd --- /dev/null +++ b/sticker-creator/src/elements/icons/AddEmoji.tsx @@ -0,0 +1,12 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import * as React from 'react'; + +export const AddEmoji = React.memo(function AddEmojiInner() { + return ( + + + + ); +}); diff --git a/sticker-creator/src/elements/icons/index.tsx b/sticker-creator/src/elements/icons/index.tsx new file mode 100644 index 000000000..35ddf6ac1 --- /dev/null +++ b/sticker-creator/src/elements/icons/index.tsx @@ -0,0 +1,4 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +export { AddEmoji } from './AddEmoji'; diff --git a/sticker-creator/src/fonts.scss b/sticker-creator/src/fonts.scss new file mode 100644 index 000000000..08eb87069 --- /dev/null +++ b/sticker-creator/src/fonts.scss @@ -0,0 +1,98 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +$inter: Inter, 'Helvetica Neue', 'Source Sans Pro', 'Source Han Sans SC', + 'Source Han Sans CN', 'Hiragino Sans GB', 'Hiragino Kaku Gothic', + 'Microsoft Yahei UI', Helvetica, Arial, sans-serif; + +@mixin font-family { + font-family: $inter; + &:lang(ja) { + font-family: 'SF Pro JP', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', + メイリオ, Meiryo, 'MS Pゴシック', 'Helvetica Neue', Helvetica, Arial, + sans-serif; + } +} + +@mixin font-title-1 { + @include font-family; + font-weight: 600; + font-size: 26px; + line-height: 32px; + letter-spacing: -0.56px; +} + +@mixin font-title-2 { + @include font-family; + font-weight: 600; + font-size: 20px; + line-height: 26px; + letter-spacing: -0.34px; +} + +@mixin font-body-1 { + @include font-family; + font-size: 14px; + line-height: 20px; + letter-spacing: -0.08px; +} +@mixin font-body-1-bold { + @include font-body-1; + font-weight: 600; +} +@mixin font-body-1-italic { + @include font-body-1; + font-style: italic; +} +@mixin font-body-1-bold-italic { + @include font-body-1; + font-weight: 600; + font-style: italic; +} + +@mixin font-body-2 { + @include font-family; + font-size: 13px; + line-height: 18px; + letter-spacing: -0.03px; +} +@mixin font-body-2-bold { + @include font-body-2; + font-weight: 600; +} +@mixin font-body-2-medium { + @include font-body-2; + font-weight: 500; +} +@mixin font-body-2-italic { + @include font-body-2; + font-style: italic; +} +@mixin font-body-2-bold-italic { + @include font-body-2; + font-weight: 600; + font-style: italic; +} + +@mixin font-subtitle { + @include font-family; + font-size: 12px; + line-height: 16px; + letter-spacing: 0; +} + +@mixin font-caption { + @include font-family; + font-size: 11px; + line-height: 14px; + letter-spacing: 0.06px; +} +@mixin font-caption-bold { + @include font-caption; + font-weight: 600; +} +@mixin font-caption-bold-italic { + @include font-caption; + font-weight: 600; + font-style: italic; +} diff --git a/sticker-creator/src/hooks/useRefMerger.ts b/sticker-creator/src/hooks/useRefMerger.ts new file mode 100644 index 000000000..3b559fb53 --- /dev/null +++ b/sticker-creator/src/hooks/useRefMerger.ts @@ -0,0 +1,8 @@ +// Copyright 2021 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import { useMemo } from 'react'; +import { createRefMerger } from '../util/refMerger'; + +export const useRefMerger = (): ReturnType => + useMemo(createRefMerger, []); diff --git a/sticker-creator/src/index.scss b/sticker-creator/src/index.scss new file mode 100644 index 000000000..d5da601f3 --- /dev/null +++ b/sticker-creator/src/index.scss @@ -0,0 +1,147 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@import './mixins.scss'; +@import './colors.scss'; +@import './fonts.scss'; + +html { + height: 100%; + cursor: inherit; +} + +* { + box-sizing: border-box; +} + +svg:not([fill]) { + fill: currentColor; +} + +body { + position: relative; + height: 100%; + width: 100%; + margin: 0; + + @include font-body-1; + + @include light-theme() { + background-color: $color-white; + color: $color-gray-90; + } + @include dark-theme() { + background-color: $color-gray-95; + color: $color-gray-05; + } +} + +button { + cursor: pointer; + font-size: inherit; + padding: 0; +} + +button.grey { + border-radius: 5px; + border: solid 1px $color-gray-25; + cursor: pointer; + margin: 1em auto; + padding: 1em; + font-family: inherit; + + @include light-theme { + color: $color-gray-60; + background: $color-gray-02; + box-shadow: 0 0 10px -5px $color-black-alpha-40; + } + @include dark-theme { + border: solid 1px $color-gray-25; + color: $color-gray-60; + background: $color-gray-02; + box-shadow: 0 0 10px -5px $color-white-alpha-60; + } + + &:hover { + @include light-theme { + box-shadow: 0 0 10px -3px $color-black-alpha-60; + } + @include dark-theme { + box-shadow: 0 0 10px -3px $color-white-alpha-80; + } + } + + &[disabled='disabled'] { + &, + &:hover { + opacity: 0.5; + box-shadow: none; + cursor: default; + } + } +} + +a { + @include light-theme() { + color: $color-gray-90; + } + @include dark-theme() { + color: $color-gray-05; + } +} + +#root { + display: flex; + flex-direction: column; + min-height: 100vh; + + @include light-theme() { + background-color: $color-white; + } + + @include dark-theme() { + background-color: $color-gray-90; + } +} + +// Overrides + +.EmojiPickerReact.epr-main { + --emoji-padding: 2px; + + .epr-search, + .epr-emoji-category-label { + font-family: $inter; + } + + button.epr-emoji { + padding: var(--epr-emoji-padding); + + &:hover { + background-color: var(--epr-emoji-hover-color); + } + } + + button.epr-emoji .epr-emoji-img { + --original-size: 64px; + --original-padding: 1px; + --original-full-size: calc( + var(--original-size) + 2 * var(--original-padding) + ); + + // Override + max-height: var(--original-size); + max-width: var(--original-size); + padding: 0; + + height: var(--original-size); + width: var(--original-size); + object-fit: none; + object-position: calc(-1 * var(--epr-sheet-x) * var(--original-full-size)) + calc(-1 * var(--epr-sheet-y) * var(--original-full-size)); + + // Sadly we can't use calc here because the values are in pixels, but the + // display size is 32 px, while the image size is 64px so here it goes. + transform: scale(calc(32 / 64)); + } +} diff --git a/sticker-creator/src/main.tsx b/sticker-creator/src/main.tsx new file mode 100644 index 000000000..16325f325 --- /dev/null +++ b/sticker-creator/src/main.tsx @@ -0,0 +1,35 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import { Provider } from 'react-redux'; +import { + createMemoryRouter, + createRoutesFromElements, + Navigate, + Route, + RouterProvider, +} from 'react-router-dom'; + +import './index.scss'; +import { store } from './store'; +import { Root } from './routes/Root'; +// import { Index } from './routes/Index'; +import { createArtRoutes } from './routes/art'; +import { loadLocale } from './util/i18n'; + +const router = createMemoryRouter( + createRoutesFromElements( + loadLocale()} element={}> + } /> + {createArtRoutes()} + + ) +); + +ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( + + + +); diff --git a/sticker-creator/src/mixins.scss b/sticker-creator/src/mixins.scss new file mode 100644 index 000000000..780b148dc --- /dev/null +++ b/sticker-creator/src/mixins.scss @@ -0,0 +1,44 @@ +// Copyright 2023 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +@mixin light-theme() { + @content; +} + +@mixin dark-theme() { + @media (prefers-color-scheme: dark) { + @content; + } +} + +// Icons + +@mixin color-svg($svg, $color, $stretch: true, $mask-origin: null) { + -webkit-mask: url($svg) no-repeat center; + @if $stretch { + -webkit-mask-size: 100%; + } + @if $mask-origin { + -webkit-mask-origin: $mask-origin; + } + background-color: $color; + @media (forced-colors: active) { + background-color: WindowText; + } +} + +// Other + +@mixin popper-shadow() { + box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.3), 0px 0px 8px rgba(0, 0, 0, 0.05); + + @media (forced-colors: active) { + border: 1px solid WindowText; + } +} + +@mixin small-screen() { + @media screen and (max-width: 800px) { + @content; + } +} diff --git a/sticker-creator/src/routes/Index.module.scss b/sticker-creator/src/routes/Index.module.scss new file mode 100644 index 000000000..0048a7184 --- /dev/null +++ b/sticker-creator/src/routes/Index.module.scss @@ -0,0 +1,9 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +.container { + padding: 1rem; + display: flex; + flex-direction: column; + gap: 1rem; +} diff --git a/sticker-creator/src/routes/Index.tsx b/sticker-creator/src/routes/Index.tsx new file mode 100644 index 000000000..4e6de58f5 --- /dev/null +++ b/sticker-creator/src/routes/Index.tsx @@ -0,0 +1,24 @@ +// Copyright 2022 Signal Messenger, LLC +// SPDX-License-Identifier: AGPL-3.0-only + +import React from 'react'; +import { Link } from 'react-router-dom'; + +import { useI18n } from '../contexts/I18n'; +import styles from './Index.module.scss'; + +export function Index(): JSX.Element { + const i18n = useI18n(); + + return ( + <> +
+ + {i18n('index--create-sticker-pack')} + +
+ +