diff --git a/Directory.Build.props b/Directory.Build.props index 87335febd6f..bae14411862 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -9,7 +9,7 @@ - 3.858.0 + 3.860.0 $(VersionSuffix)-$(BuildNumber) $(NoWarn);S3875;S4457 diff --git a/src/VirtoCommerce.Platform.Web/Controllers/Api/ModulesController.cs b/src/VirtoCommerce.Platform.Web/Controllers/Api/ModulesController.cs index 32317e12955..05534ff8449 100644 --- a/src/VirtoCommerce.Platform.Web/Controllers/Api/ModulesController.cs +++ b/src/VirtoCommerce.Platform.Web/Controllers/Api/ModulesController.cs @@ -29,6 +29,8 @@ namespace VirtoCommerce.Platform.Web.Controllers.Api [Authorize] public class ModulesController : Controller { + private const string _managementIsDisabledMessage = "Module management is disabled."; + private readonly IExternalModuleCatalog _externalModuleCatalog; private readonly IModuleInstaller _moduleInstaller; private readonly IPushNotificationManager _pushNotifier; @@ -36,11 +38,21 @@ public class ModulesController : Controller private readonly ISettingsManager _settingsManager; private readonly PlatformOptions _platformOptions; private readonly ExternalModuleCatalogOptions _externalModuleCatalogOptions; + private readonly LocalStorageModuleCatalogOptions _localStorageModuleCatalogOptions; private readonly IPlatformRestarter _platformRestarter; private static readonly object _lockObject = new object(); private static readonly FormOptions _defaultFormOptions = new FormOptions(); - public ModulesController(IExternalModuleCatalog externalModuleCatalog, IModuleInstaller moduleInstaller, IPushNotificationManager pushNotifier, IUserNameResolver userNameResolver, ISettingsManager settingsManager, IOptions platformOptions, IOptions externalModuleCatalogOptions, IPlatformRestarter platformRestarter) + public ModulesController( + IExternalModuleCatalog externalModuleCatalog, + IModuleInstaller moduleInstaller, + IPushNotificationManager pushNotifier, + IUserNameResolver userNameResolver, + ISettingsManager settingsManager, + IOptions platformOptions, + IOptions externalModuleCatalogOptions, + IOptions localStorageModuleCatalogOptions, + IPlatformRestarter platformRestarter) { _externalModuleCatalog = externalModuleCatalog; _moduleInstaller = moduleInstaller; @@ -49,6 +61,7 @@ public ModulesController(IExternalModuleCatalog externalModuleCatalog, IModuleIn _settingsManager = settingsManager; _platformOptions = platformOptions.Value; _externalModuleCatalogOptions = externalModuleCatalogOptions.Value; + _localStorageModuleCatalogOptions = localStorageModuleCatalogOptions.Value; _platformRestarter = platformRestarter; } @@ -143,22 +156,29 @@ public ActionResult GetMissingDependencies([FromBody] Module public async Task> UploadModuleArchive() { EnsureModulesCatalogInitialized(); - ModuleDescriptor result = null; + + if (!_localStorageModuleCatalogOptions.RefreshProbingFolderOnStart) + { + return BadRequest(_managementIsDisabledMessage); + } + if (!MultipartRequestHelper.IsMultipartContentType(Request.ContentType)) { return BadRequest($"Expected a multipart request, but got {Request.ContentType}"); } + var uploadPath = Path.GetFullPath(_platformOptions.LocalUploadFolderPath); if (!Directory.Exists(uploadPath)) { Directory.CreateDirectory(uploadPath); } - string targetFilePath = null; + ModuleDescriptor result = null; + string targetFilePath = null; var boundary = MultipartRequestHelper.GetBoundary(MediaTypeHeaderValue.Parse(Request.ContentType), _defaultFormOptions.MultipartBoundaryLengthLimit); var reader = new MultipartReader(boundary, HttpContext.Request.Body); - var section = await reader.ReadNextSectionAsync(); + if (section != null) { var hasContentDispositionHeader = ContentDispositionHeaderValue.TryParse(section.ContentDisposition, out var contentDisposition); @@ -205,6 +225,7 @@ public async Task> UploadModuleArchive() } } } + return Ok(result); } @@ -394,27 +415,42 @@ public void ModuleBackgroundJob(ModuleBackgroundJobOptions options, ModulePushNo try { notification.Started = DateTime.UtcNow; - var moduleInfos = _externalModuleCatalog.Modules.OfType() - .Where(x => options.Modules.Any(y => y.Identity.Equals(x.Identity))) - .ToArray(); - var reportProgress = new Progress(m => + + if (_localStorageModuleCatalogOptions.RefreshProbingFolderOnStart) { - lock (_lockObject) + var moduleInfos = _externalModuleCatalog.Modules.OfType() + .Where(x => options.Modules.Any(y => y.Identity.Equals(x.Identity))) + .ToArray(); + var reportProgress = new Progress(m => { - notification.Description = m.Message; - notification.ProgressLog.Add(m); - _pushNotifier.Send(notification); - } - }); + lock (_lockObject) + { + notification.Description = m.Message; + notification.ProgressLog.Add(m); + _pushNotifier.Send(notification); + } + }); - switch (options.Action) + switch (options.Action) + { + case ModuleAction.Install: + _moduleInstaller.Install(moduleInfos, reportProgress); + break; + case ModuleAction.Uninstall: + _moduleInstaller.Uninstall(moduleInfos, reportProgress); + break; + } + } + else { - case ModuleAction.Install: - _moduleInstaller.Install(moduleInfos, reportProgress); - break; - case ModuleAction.Uninstall: - _moduleInstaller.Uninstall(moduleInfos, reportProgress); - break; + notification.Finished = DateTime.UtcNow; + notification.Description = _managementIsDisabledMessage; + notification.ProgressLog.Add(new ProgressMessage + { + Level = ProgressMessageLevel.Error, + Message = notification.Description, + }); + _pushNotifier.Send(notification); } } catch (Exception ex) @@ -430,7 +466,7 @@ public void ModuleBackgroundJob(ModuleBackgroundJobOptions options, ModulePushNo _settingsManager.SetValue(PlatformConstants.Settings.Setup.ModulesAutoInstallState.Name, AutoInstallState.Completed); notification.Finished = DateTime.UtcNow; - notification.Description = "Installation finished."; + notification.Description = options.Action == ModuleAction.Install ? "Installation finished." : "Uninstalling finished."; notification.ProgressLog.Add(new ProgressMessage { Level = ProgressMessageLevel.Info, diff --git a/src/VirtoCommerce.Platform.Web/npm-shrinkwrap.json b/src/VirtoCommerce.Platform.Web/npm-shrinkwrap.json index 4bf65b36342..290e9f52185 100644 --- a/src/VirtoCommerce.Platform.Web/npm-shrinkwrap.json +++ b/src/VirtoCommerce.Platform.Web/npm-shrinkwrap.json @@ -98,57 +98,57 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", - "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -160,30 +160,10 @@ "resolved": "https://registry.npmjs.org/@types/angular/-/angular-1.8.4.tgz", "integrity": "sha512-wPS/ncJWhyxJsndsW1B6Ta8D4mi97x1yItSu+rkLDytU3oRIh2CFAjMuJceYwFAh9+DIohndWM0QBA9OU2Hv0g==" }, - "node_modules/@types/eslint": { - "version": "8.21.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.1.tgz", - "integrity": "sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "node_modules/@types/glob": { @@ -237,9 +217,9 @@ } }, "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, "dependencies": { "@webassemblyjs/helper-numbers": "1.11.6", @@ -259,9 +239,9 @@ "dev": true }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true }, "node_modules/@webassemblyjs/helper-code-frame": { @@ -351,15 +331,15 @@ "dev": true }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@webassemblyjs/wasm-gen": "1.12.1" } }, "node_modules/@webassemblyjs/ieee754": { @@ -387,28 +367,28 @@ "dev": true }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", "@webassemblyjs/leb128": "1.11.6", @@ -416,24 +396,24 @@ } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -485,12 +465,12 @@ "peer": true }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -541,9 +521,9 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", + "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -552,10 +532,10 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", - "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, "peerDependencies": { "acorn": "^8" @@ -727,17 +707,19 @@ } }, "node_modules/angular-translate-loader-url": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/angular-translate-loader-url/-/angular-translate-loader-url-2.19.0.tgz", - "integrity": "sha512-PptW0ExcwWKroEnXjIYg8fvvfnhM1buhVep1vOIowLqQV+HyRyonxGauEbCuOsMqPJARGM24WJtPnk4X2blhSg==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/angular-translate-loader-url/-/angular-translate-loader-url-2.19.1.tgz", + "integrity": "sha512-tHU4HcqdlIp97wlloc++8aGFYognbpZ2C0Ip9AL2ngEYkpwnQeYwAf4iTcFW+++Jzw6TGoYo+31n0rvhVdaCsg==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dependencies": { - "angular-translate": "~2.19.0" + "angular-translate": "~2.19.1" } }, "node_modules/angular-translate-loader-url/node_modules/angular-translate": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.19.0.tgz", - "integrity": "sha512-Z/Fip5uUT2N85dPQ0sMEe1JdF5AehcDe4tg/9mWXNDVU531emHCg53ZND9Oe0dyNiGX5rWcJKmsL1Fujus1vGQ==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.19.1.tgz", + "integrity": "sha512-SrU40ndnL422vXiVoqVveCmSnCzMcIXxQgnl7Cv9krOKUg6B8KZK3ddYzidHR/rxVuySezYHNDgRvzQNKwAdNQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dependencies": { "angular": "^1.8.0" }, @@ -761,18 +743,20 @@ "deprecated": "For the actively supported Angular, see https://www.npmjs.com/package/@angular/core. AngularJS support has officially ended. For extended AngularJS support options, see https://goo.gle/angularjs-path-forward." }, "node_modules/angular-translate-storage-local": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/angular-translate-storage-local/-/angular-translate-storage-local-2.19.0.tgz", - "integrity": "sha512-YrM3Y1PLi7OBd053vIhGKQ/DN3nWtQEJlj3++EcRLaGtmDu+4Fp/drzO4gKJtMQRRmJCIM3BqFSqalqijJD56Q==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/angular-translate-storage-local/-/angular-translate-storage-local-2.19.1.tgz", + "integrity": "sha512-RbAxT+e6dErL8n03M9iJ0LW+1Qk1IEJSh0yNlGQHd0gjk+ACVcZvBg55+kK5ZErZ5USkqRgETST1OWtisJUafw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dependencies": { - "angular-translate": "~2.19.0", - "angular-translate-storage-cookie": "~2.19.0" + "angular-translate": "~2.19.1", + "angular-translate-storage-cookie": "~2.19.1" } }, "node_modules/angular-translate-storage-local/node_modules/angular-translate": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.19.0.tgz", - "integrity": "sha512-Z/Fip5uUT2N85dPQ0sMEe1JdF5AehcDe4tg/9mWXNDVU531emHCg53ZND9Oe0dyNiGX5rWcJKmsL1Fujus1vGQ==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.19.1.tgz", + "integrity": "sha512-SrU40ndnL422vXiVoqVveCmSnCzMcIXxQgnl7Cv9krOKUg6B8KZK3ddYzidHR/rxVuySezYHNDgRvzQNKwAdNQ==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dependencies": { "angular": "^1.8.0" }, @@ -781,12 +765,13 @@ } }, "node_modules/angular-translate-storage-local/node_modules/angular-translate-storage-cookie": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/angular-translate-storage-cookie/-/angular-translate-storage-cookie-2.19.0.tgz", - "integrity": "sha512-U3LxHvXVzFOqp7IcYcqMUWhMiTGjHtCDXDKB1MKhTjJSKz+9pLeRseLQBMAGjvXCmMeDteURQR4HEEfzL3vFQw==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/angular-translate-storage-cookie/-/angular-translate-storage-cookie-2.19.1.tgz", + "integrity": "sha512-o1luWgZhoB5cpVOe7QcCjsROhjmrCD0mruPTG6lJkCmDroB1tNUqnmkHh2+UieCI1rM+v5SjZiaYVF25enmi1w==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dependencies": { "angular-cookies": ">=1.2.26 <1.9", - "angular-translate": "~2.19.0" + "angular-translate": "~2.19.1" } }, "node_modules/angular-translate/node_modules/angular": { @@ -1209,12 +1194,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "devOptional": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -1317,9 +1302,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -1329,13 +1314,17 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -1431,9 +1420,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001458", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001458.tgz", - "integrity": "sha512-lQ1VlUUq5q9ro9X+5gOEyH7i3vm+AYVT1WDCVB69XOZ17KZRhnZ9J0Sqz7wTHQaLBJccNCHq8/Ww5LlOIZbB0w==", + "version": "1.0.30001669", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", + "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", "dev": true, "funding": [ { @@ -1443,6 +1432,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, @@ -2035,15 +2028,15 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.311", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.311.tgz", - "integrity": "sha512-RoDlZufvrtr2Nx3Yx5MB8jX3aHIxm8nRWPJm3yVvyHmyKaRvn90RjzB6hNnt0AkhS3IInJdyRfQb4mWhPvUjVw==", + "version": "1.5.39", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.39.tgz", + "integrity": "sha512-4xkpSR6CjuiaNyvwiWDI85N9AxsvbPawB8xc7yzLPonYTuP19BVgYweKyUMFtHEZgIcHWMt1ks5Cqx2m+6/Grg==", "dev": true }, "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "version": "6.5.7", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", + "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", "peer": true, "dependencies": { "bn.js": "^4.11.9", @@ -2079,9 +2072,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -2122,9 +2115,9 @@ "dev": true }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "engines": { "node": ">=6" @@ -2450,9 +2443,9 @@ "peer": true }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "devOptional": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -2733,9 +2726,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/har-schema": { "version": "2.0.0", @@ -3911,9 +3904,9 @@ "integrity": "sha512-kbd+ABY2XRdByRVHPcBDemymfNL8+msGyKNxG/ziZnh9RjneuuGQl3/CE5UkNWxCInkJS+ztc5B31/t2kIO4Yw==" }, "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, "node_modules/normalize-path": { @@ -4229,9 +4222,9 @@ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true }, "node_modules/picomatch": { @@ -4920,9 +4913,9 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "dependencies": { "randombytes": "^2.1.0" @@ -5516,9 +5509,9 @@ } }, "node_modules/terser": { - "version": "5.19.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.3.tgz", - "integrity": "sha512-pQzJ9UJzM0IgmT4FAtYI6+VqFf0lj/to58AV0Xfgg0Up37RyPG7Al+1cepC6/BVuAxR9oNb41/DL4DEoHJvTdg==", + "version": "5.34.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.34.1.tgz", + "integrity": "sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -5534,16 +5527,16 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -5837,9 +5830,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -5849,14 +5842,18 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { - "browserslist-lint": "cli.js" + "update-browserslist-db": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" @@ -5951,9 +5948,9 @@ "peer": true }, "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", "dev": true, "dependencies": { "glob-to-regexp": "^0.4.1", @@ -6204,34 +6201,33 @@ } }, "node_modules/webpack": { - "version": "5.88.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", - "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", "dev": true, "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, "bin": { @@ -6702,9 +6698,9 @@ } }, "node_modules/webpack-jquery-ui/node_modules/terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.6.tgz", + "integrity": "sha512-2lBVf/VMVIddjSn3GqbT90GvIJ/eYXJkt8cTzU7NbjKqK8fwv18Ftr4PlbF46b/e88743iZFL5Dtr/rC4hjIeA==", "peer": true, "dependencies": { "cacache": "^12.0.2", @@ -6753,9 +6749,9 @@ } }, "node_modules/webpack-jquery-ui/node_modules/webpack": { - "version": "4.46.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", - "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", + "version": "4.47.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.47.0.tgz", + "integrity": "sha512-td7fYwgLSrky3fI1EuU5cneU4+pbH6GgOfuKNS1tNPcfdGinGELAqsb/BP4nnvZyKSG2i/xFGU7+n2PvZA8HJQ==", "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", @@ -6901,9 +6897,9 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/ws": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", - "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz", + "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==", "dependencies": { "async-limiter": "~1.0.0" } diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Common.json index 20c00e1650e..24e307ba8c3 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Common.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Common.json @@ -5,121 +5,147 @@ "activate": "Aktivieren", "assign": "Zuweisen", "cancel": "Abbrechen", - "clear": " Löschen", - "clear-all": "Alle löschen", + "clear": "Löschen", + "clear-all": "Alles löschen", "clone": "Klonen", "close": "Schließen", "confirm": "Bestätigen", "copy-link": "Link kopieren", + "copy": "Kopieren", "create": "Erstellen", "cut": "Ausschneiden", "delete": "Löschen", + "add-all": "Alle hinzufügen", + "remove-all": "Alle löschen", "download": "Herunterladen", "edit": "Bearbeiten", "export": "Exportieren", "generate": "Generieren", "import": "Importieren", + "import-sample-data": "Beispieldaten importieren", "install": "Installieren", "manage": "Verwalten", "more": "Mehr", "no": "Nein", "new-folder": "Neuer Ordner", "new-license": "Lizenz erneuern", - "ok": "Ok", + "ok": "OK", "paste": "Einfügen", - "pick-selected": "Abholung ausgewählt", + "pick-selected": "Ausgewählte auswählen", "preview": "Vorschau", - "open-browser": "In Browser öffnen", + "open-browser": "Im Browser öffnen", "redo": "Wiederholen", "refresh": "Aktualisieren", "remove": "Entfernen", "reset": "Zurücksetzen", - "restart": "Neu starten", + "restart": "Neustart", "save": "Speichern", "send": "Senden", "select-all": "Alle auswählen", + "set-to-default": "Auf Standard setzen", "start-export": "Export starten", "settings": "Einstellungen", "sign-out": "Abmelden", - "undo": "Rückgängig machen", + "undo": "Rückgängig", "uninstall": "Deinstallieren", - "unselect-all": "Markierung aufheben", + "unselect-all": "Alle abwählen", "update": "Aktualisieren", "upload": "Hochladen", "yes": "Ja", - "add-new-property": "Neue Eigenschaft", - "manage-type-properties": "Typen verwalten", + "add-new-property": "Neue Eigenschaft hinzufügen", + "manage-type-properties": "Eigenschaftstypen", "manage-profile": "Profil verwalten", "minimize": "Minimieren", "maximize": "Maximieren", - "stop-sending": "Senden", + "stop-sending": "Senden stoppen", "set-active": "Aktiv setzen", "reject-user": "Benutzer ablehnen", "change-password": "Passwort ändern", + "unlock-account": "Konto entsperren", + "lock-account": "Konto sperren", "today": "Heute", - "see-details": "Siehe Einzelheiten", - "dismiss": "Weggetreten" + "time": "Zeit", + "now": "Jetzt", + "date": "Datum", + "see-details": "Details anzeigen", + "dismiss": "Verwerfen", + "hide-empty-property-values": "Leere Werte ausblenden", + "show-empty-property-values": "Leere Werte anzeigen", + "titles": { + "refresh": "Aktualisieren", + "new-folder": "Neuer Ordner", + "upload": "Hochladen" + } }, "list": { "no-data": "Keine Daten", - "count": "Anzahl" + "count": "Anzahl", + "loading": "Wird geladen...", + "item-not-found": "Fehler: Nicht gefunden" }, "placeholders": { - "n-a": "N/A", - "no-file": "Datei wählen", - "search-keyword": "Durchsuchen..." + "n-a": "N/V", + "no-file": "Datei auswählen", + "search-keyword": "Suchbegriff eingeben...", + "select-value": "Wert auswählen", + "select-values": "Werte auswählen" }, "dialogs": { "delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Einträge löschen?" + "title": "Löschbestätigung", + "message": "Sind Sie sicher, dass Sie die ausgewählten Einträge löschen möchten?" } }, "properties": { "short-text": { - "title": "Kurztext", - "description": "Texte kürzer als 1024 Zeichen." + "title": "Kurzer Text", + "description": "Textwerte unter 1024 Zeichen" }, "long-text": { "title": "Langer Text", - "description": "Text ohne Längenbeschränkung." + "description": "Unbegrenzter Text ohne Größenbeschränkung" }, "integer": { "title": "Ganzzahl", - "description": "Ganzzahl." + "description": "Ganze Zahl" }, "decimal": { - "title": "Anzahl", - "description": "Zahl mit ." + "title": "Dezimalzahl", + "description": "Dezimalzahl mit einer Genauigkeit von 18 und einer Skalierung von 4" }, "date-time": { "title": "Datum und Uhrzeit", - "description": "Datum auswählen." + "description": "Datum auswählen" }, "boolean": { - "title": "boolean", - "description": "Ja oder Nein" + "title": "Boolesch", + "description": "Schaltertyp" }, "html": { "title": "HTML", - "description": "HTML-Markup." + "description": "HTML-Markup" }, "undefined": { - "title": "Nicht definiert" + "title": "Undefiniert" + }, + "image": { + "title": "Bild", + "description": "Bildtyp" } }, "genericValueInput": { "placeholders": { - "short-text": "Kurztext eingeben", + "short-text": "Kurzen Text eingeben", "secure-string": "Geheimen Text eingeben", - "url": " URL eingeben", + "email": "E-Mail eingeben", + "url": "URL eingeben", "long-text": "Langen Text eingeben", - "integer": "Ganzzahl eingeben", + "integer": "Ganze Zahl eingeben", "number": "Dezimalzahl eingeben", "date-time": "Datum auswählen", "short-text-multivalue": "Wert hinzufügen", - "integer-multivalue": "Integer hinzufügen", - "number-multivalue": "Dezimal hinzufügen", + "integer-multivalue": "Ganzzahl hinzufügen", + "number-multivalue": "Dezimalzahl hinzufügen", "short-text-dictionary": "Wert auswählen", "short-text-dictionary-multivalue": "Wert auswählen", "short-text-multilang": "Wert eingeben", @@ -128,12 +154,35 @@ "short-text-dictionary-multilang": "Wert auswählen", "short-text-dictionary-multivalue-multilang": "Wert auswählen", "long-text-dictionary-multivalue-multilang": "Wert auswählen" - }, - "short-text-input": { - "placeholder": "Wert eingeben", - "required": "Erforderlich", - "maxLength": "Dieses Feld darf nicht mehr als {{number}} Zeichen enthalten" } + }, + "short-text-input": { + "placeholder": "Wert eingeben", + "required": "Dieses Feld ist erforderlich", + "maxLength": "Dieses Feld darf nicht mehr als {{number}} Zeichen enthalten" + }, + "validators": { + "uriWithoutQuery": { + "error": "Ungültiges URI-Format. Stellen Sie sicher, dass die URI keine Abfrageparameter enthält" + } + }, + "errors": { + "generic-error": "Fehler", + "400": "Ungültige Anfrage", + "401": "Nicht autorisiert", + "403": "Verboten", + "404": "Nicht gefunden", + "405": "Methode nicht erlaubt", + "406": "Nicht akzeptabel", + "407": "Proxy-Authentifizierung erforderlich", + "408": "Zeitüberschreitung der Anfrage", + "409": "Konflikt", + "429": "Zu viele Anfragen", + "500": "Interner Serverfehler", + "501": "Nicht implementiert", + "502": "Schlechtes Gateway", + "503": "Dienst nicht verfügbar", + "504": "Gateway-Zeitüberschreitung" } } -} +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Platform.json index 87f9928612a..a67a03f59b7 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Platform.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/de.VirtoCommerce.Platform.json @@ -1,63 +1,72 @@ { "platform": { "menu": { - "home": "Start", + "home": "Startseite", "browse": "Durchsuchen", "configuration": "Konfiguration", "notifications": "Benachrichtigungen", - "more": " Mehr", + "more": "Mehr", "settings": "Einstellungen", "dynamic-properties": "Dynamische Eigenschaften", "security": "Sicherheit", "modules": "Module", "export-import": "Export & Import", "user-profile": "Benutzerprofil", - "assets": "Medien", - "toggle-favorites": "Umschalttaste+Leertaste zu Favoriten umschalten", - "help": "hilfe" + "assets": "Ressourcen", + "toggle-favorites": "Umschalt + Leertaste zum Umschalten der Favoriten", + "help": "Hilfe" }, "navigation": { "back": "Zurück" }, "blades": { "system-info": { - "title": "Plattform Informationen" + "title": "Plattforminformationen", + "labels": { + "clr-version": "CLR-Version", + "environment-name": "Umgebungsmodus", + "is-64-bit-os": "64-Bit-Betriebssystem", + "is-64-bit-process": "64-Bit-Prozess", + "database-provider": "Datenbankanbieter" + } }, "asset-list": { - "title": "Medien", + "title": "Ressourcenmanagement", + "bread-crumb-top": "Alle Ressourcen", "labels": { "picture": "Bild", - "name": " Name", - "size": " Größe", + "name": "Name", + "size": "Größe", "modified": "Geändert", "actions": "Aktionen", - "group": "Groep" + "group": "Gruppe", + "language": "Sprache" } }, "asset-upload": { - "title": "Dateien hochladen", + "title": "Ressourcen hochladen", "labels": { "select-files": "Dateien auswählen", - "drag-note": "Hochzuladende Dateien hier hinziehen", - "progress": " Fortschritt", - "asset-uploaded": "Dateien hochgeladen." + "drag-note": "Dateien hierher ziehen und ablegen", + "progress": "Fortschritt", + "asset-uploaded": "Hochgeladene Ressourcen" }, "placeholders": { - "image-url": "Bild von URL importieren" + "image-url": "Datei-URL hier einfügen" } }, "operation-list": { "labels": { - "login": "Einloggen", + "login": "Anmeldung", "details": "Details", "time": "Zeit" } }, "dynamicObject-list": { - "title": "Dynamische Eigenschaften", - "subtitle": "Dynamische Eigenschaften verwalten", + "title": "Dynamische Objekttypen", + "subtitle": "Objekttyp auswählen, um dynamische Eigenschaften zu verwalten", "labels": { - "no-objects": "Keine Objekte unterstützt dynamische Eigenschaften." + "no-objects": "Noch keine Objekte unterstützen dynamische Eigenschaften" } }, "dynamicProperty-detail": { @@ -65,45 +74,45 @@ "subtitle": "Eigenschaft verwalten", "subtitle-new": "Neue Eigenschaft", "labels": { - "property-name": "Name", + "property-name": "Eigenschaftsname", "required": "Erforderlich", - "multivalue": "Mehrere Werte möglich", + "multivalue": "Mehrwert", "multilingual": "Mehrsprachig", "dictionary": "Wörterbuch", "description": "Beschreibung", - "display-order": "Bestellung anzeigen", + "display-order": "Anzeigereihenfolge", "display-name": "Anzeigename", - "value-type": "Typ", - "dictionary-values": "Wörterbucheinträge", + "value-type": "Werttyp", + "dictionary-values": "Wörterbuch-Werte", "manage-dictionary": "Wörterbuch verwalten" }, "placeholders": { - "description": "Beschreibung der Eigenschaft", + "description": "Eigenschaftsbeschreibung eingeben", "display-name": "Anzeigename eingeben...", - "display-order": "Bestellung anzeigen" + "display-order": "Anzeigereihenfolge" }, "validations": { - "multivalue": "Mehrwert-Eigenschaft kann nur Kurztext-, Integer- oder Dezimal-Wert-Typ haben.", - "multilingual": "Nur Text oder HTML-Wert kann mehrsprachig sein.", - "dictionary": "Nur Wörterbücher der Werttyp ShortText werden unterstützt." + "multivalue": "Mehrwertige Eigenschaft kann nur ShortText, Integer oder Decimal als Werttyp haben", + "multilingual": "Nur Text oder HTML-Wert kann mehrsprachig sein", + "dictionary": "Nur Wörterbücher vom Werttyp ShortText werden unterstützt" } }, "dynamicProperty-list": { - "subtitle": "Verwalten Sie die dynamische Eigenschaften", + "subtitle": "Dynamische Eigenschaften verwalten", "labels": { - "no-properties": "Keine dynamische Eigenschaften." + "no-properties": "Noch keine dynamischen Eigenschaften" } }, "notifications-menu": { - "subtitle": "Arbeiten mit Benachrichtigungen System" + "subtitle": "Arbeiten mit dem Benachrichtigungssystem" }, "property-dictionary": { - "title": "Wörterbucheinträge", - "subtitle": "Wörterbucheinträge verwalten", + "title": "Wörterbuch-Werte", + "subtitle": "Wörterbuch-Werte verwalten", "labels": { "edit-value": "Wert bearbeiten", "new-value": "Neuer Wert", - "dictionary-name": "Wörterbuch Eintrag name", + "dictionary-name": "Name des Wörterbucheintrags", "localized-values": "Lokalisierte Werte", "current-values": "Aktuelle Werte", "name": "Name", @@ -111,10 +120,10 @@ }, "validations": { "dictionary-name-required": "Erforderlich", - "dictionary-name": "Doppelte Namen gefunden", + "dictionary-name": "Doppelter Name gefunden", "localized-values-required": "Erforderlich", - "localized-values": "Doppelte Namen gefunden", - "dictionary": "Nur Wörterbücher der Werttyp ShortText werden unterstützt." + "localized-values": "Doppelter Name gefunden", + "dictionary": "Nur Wörterbücher vom Werttyp ShortText werden unterstützt" }, "placeholders": { "dictionary-name": "Namen eingeben", @@ -122,35 +131,48 @@ } }, "propertyValue-list": { - "title": "Eigenschaften Werte", + "title": "Dynamische Eigenschaften", + "subtitle": "", "labels": { - "header": "Eigenschaften Werte", - "no-properties": "Diese Einheit hat keine dynamischen Eigenschaften haben. Verwalten klicken Sie auf Eigenschaften und einige Eigenschaften erstellen. Schließen und aktuelle Einheit Ansicht öffnen dynamische Eigenschaften geladen zu erhalten." + "header": "Eigenschaftswerte", + "no-properties": "Diese Entität hat noch keine dynamischen Eigenschaften. Klicken Sie auf 'Eigenschaftstypen' und erstellen Sie einige Eigenschaften. Schließen und öffnen Sie die aktuelle Entitätsansicht erneut, um dynamische Eigenschaften zu laden" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Erforderlich" + }, + "labels": { + "new-value": "Neuer Wert", + "current-values": "Aktuelle Werte", + "values": "Werte" + }, + "placeholders": { + "value": "Wert eingeben" } }, "export-main": { - "title": "Daten exportieren", + "title": "Datenexport", "labels": { - "select-file": "Wählen Sie die zu importierende Datei", - "platform-entries": "Plattform Einträge", - "choose-modules": "Module wählen Sie exportieren", - "download-url": "URL herunterladen", + "platform-entries": "Plattformeinträge", + "choose-modules": "Module zum Exportieren auswählen", + "download-url": "Download-URL", "errors": "Fehler", - "start": "Starten", + "start": "Start", "end": "Ende" }, "menu": { "security": { "title": "Sicherheit", - "description": "Benutzerkonten und Rollen" + "description": "Konten und Rollen" }, "binary": { "title": "Binär", - "description": "Binäre Daten" + "description": "Binärdaten" }, "settings": { "title": "Einstellungen", - "description": "Plattform Einstellungen" + "description": "Plattformeinstellungen" }, "dynamic-props": { "title": "Dynamische Eigenschaften", @@ -159,34 +181,38 @@ } }, "import-main": { - "title": "Daten importieren", + "title": "Datenimport", "labels": { "start-import": "Import starten", - "select-file": "Wählen Sie die zu importierende Datei", - "upload-progress": "Fortschritte hochladen", - "import-data-information": "Importieren von Daten", - "author": "Thema", - "data-file-created": "Daten Datei erstellt", - "created-platform-version": "In der Plattform Version erstellt", - "platform-entries": "Plattform Einträge", - "choose-modules": "Wählen Sie Module zu importieren.", + "select-file": "Wählen Sie eine .zip-Datei zum Importieren aus. Die Datei muss vom Commerce Manager-Datenexport erstellt worden sein", + "drag-note": "Ziehen Sie eine .zip-Datei zum Importieren hierher. Die Datei muss vom Commerce Manager-Datenexport erstellt worden sein", + "upload-failed": "Upload fehlgeschlagen", + "upload-progress": "Upload-Fortschritt", + "import-progress": "Import-Fortschritt", + "import-finished": "Import abgeschlossen", + "import-data-information": "Import-Dateninformationen", + "author": "Autor", + "data-file-created": "Datendatei erstellt", + "created-platform-version": "Erstellt in Plattformversion", + "platform-entries": "Plattformeinträge", + "choose-modules": "Module zum Importieren auswählen", "no-data": "Keine Daten", "errors": "Fehler", - "start": "Starten", + "start": "Start", "end": "Ende" }, "menu": { "security": { "title": "Sicherheit", - "description": "Benutzerkonten und Rollen" + "description": "Konten und Rollen" }, "binary": { "title": "Binär", - "description": "Binäre Daten" + "description": "Binärdaten" }, "settings": { "title": "Einstellungen", - "description": "Plattform Einstellungen" + "description": "Plattformeinstellungen" }, "dynamic-props": { "title": "Dynamische Eigenschaften", @@ -195,93 +221,101 @@ } }, "exportImport-main": { - "title": "Importieren und Exportieren von Daten", + "title": "Datenexport und -import", "menu": { "export": { - "title": "Exportieren", - "description": "Die Daten werden in einer Datei gespeichert, damit sie später importiert werden kann." + "title": "Export", + "description": "Daten werden in eine Datei gespeichert, damit sie später importiert werden können" }, "import": { - "title": "Importieren", - "description": "Import von Daten einer exportierten Datei." + "title": "Import", + "description": "Daten aus einer exportierten Datei importieren" } } }, "resolve-result": { - "title": "Vorschau Ergebnis", + "title": "Vorschau des Ergebnisses", "labels": { "subject": "Betreff", - "body": "Körper" + "body": "Inhalt" } }, "module-settings-detail": { - "title": "Einstellungen des Moduls" + "title": "Moduleinstellungen" }, "module-wizard-progress-step": { - "title-install": "Modul einbauen", - "title-update": "Baugruppe aktualisieren", - "title-uninstall": "Modul deinstallieren", + "title-install": "Modulinstallation", + "title-update": "Modulaktualisierung", + "title-uninstall": "Moduldeinstallation", "labels": { - "start": "Starten", + "start": "Start", "end": "Ende", - "progress-messages": "Die Statusmeldungen", - "process-completed": "Die Installation ist abgeschlossen.", - "restart-application": "Starten Sie die Anwendung neu, jetzt oder später." + "progress-messages": "Fortschrittsmeldungen", + "process-completed": "Modulinstallationsprozess abgeschlossen", + "restart-application": "Starten Sie die Anwendung jetzt oder später neu" } }, "module-detail": { - "title": "Informationen zum Modul", + "title": "Modulinformationen", "labels": { "i-accept-the": "Ich akzeptiere die", "license-link": "Lizenz", "license": "Lizenz", - "agreement": "Vereinbarung.", - "install-from-file": "Installieren/Modul von lokalem Dateisystem aktualisieren", - "select-module-file": "Ein Modul (.zip-Datei) aus Ihrem lokalen Dateisystem hochladen.", - "upload-progress": "Hochladen Fortschritte", - "module-info": "Modul info", + "agreement": "Vereinbarung", + "install-from-file": "Modul aus Datei installieren / aktualisieren", + "select-module-file": "Laden Sie eine Moduldatei (.zip) aus einer externen Quelle außerhalb des zentralen Modulrepositories hoch", + "upload-progress": "Upload-Fortschritt", + "module-info": "Modulinfo", "title": "Titel", - "author": "Thema", + "official": "Offizielles Modul von {{$owner}}", + "owners": "Entwickelt von {{$owner}}", + "author": "Autor", "authors": "Autoren", "id": "ID", "version": "Version", - "project-information": "Informationen zum Projekt", + "project-information": "Projektinformationen", "description": "Beschreibung", - "platform-version": "Plattform Version", + "platform-version": "Plattformversion", "dependencies": "Abhängigkeiten", + "optional-dependencies": "Optionale Abhängigkeiten", "tags": "Tags", - "install-version": "Installieren Sie version", - "errors": "Fehler" + "install-version": "Installations version", + "errors": "Fehler", + "update-version": "{{id}} auf aktualisieren" } }, "modules-main": { "title": "Module", "labels": { - "updates": "Updates", + "updates": "Aktualisierungen", "available": "Verfügbar", + "browse": "Überblick", "installed": "Installiert", "withErrors": "Fehler", - "advanced": "Weitere Optionen" + "advanced": "Erweitert" } }, "modules-list": { - "subtitle": "Module Management", + "subtitle": "Modulverwaltung", "labels": { - "grouping": "Modul Bundles anzeigen", + "grouping": "Modulbündel anzeigen", "ungrouped": "Andere", - "no-updates": "Keine Aktualisierungen gefunden.", - "no-modules-part1": "Keine neue Module zu installieren.", - "no-installed-modules": "Keine installierten Module.", + "no-updates": "Keine Aktualisierungen gefunden", + "no-modules": "Keine neuen Module zum Installieren", + "no-installed-modules": "Keine installierten Module gefunden", "icon": "Symbol", + "up-to-date": "Modul ist auf dem neuesten Stand", + "update-available": "Aktualisierung für dieses Modul verfügbar", "module": "Modul", "version": "Version", - "author": "Thema", - "installed": "Installierte Module" + "author": "Autor", + "installed": "Installierte Module", + "manual-install-warning": "Warnung! Manuell installierte Module werden nicht gestartet, da RefreshProbingFolderOnStart auf false gesetzt ist" } }, "history": { "title": "Systemereignisse", - "subtitle": "Veranstaltungen Geschichte", + "subtitle": "Ereignisverlauf", "labels": { "type": "Typ", "title": "Titel", @@ -290,58 +324,38 @@ } }, "historyDetailDefault": { - "title": "Event Detail", - "subtitle": "Event Detail", + "title": "Ereignisdetail", + "subtitle": "Ereignisdetail", "labels": { - "start": "Starten", + "start": "Start", "end": "Ende", - "errors": "Fehler" + "elapsed": "Vergangen", + "errors": "Fehler", + "stats": "{{ processedCount }} von {{ totalCount }} Datensätzen verarbeitet" } }, "menuHeader": { "labels": { - "history": "Geschichte", - "clear-recent": "Löschen Sie alle kürzlich" - } - }, - "account-api": { - "title": "API-Konto", - "title-new": "Neue API-Konto", - "labels": { - "is-active": "Ist aktiv", - "account-name": "Name der Konto", - "account-type": "Kontotyp", - "secret-key": "Geheimer Schlüssel" - }, - "placeholders": { - "account-name": "Namen eingeben", - "account-type": "Wählen Sie aus...", - "secret-key": "Geheime Schlüssel generieren", - "app-id": "Erzeugen..." - } - }, - "account-api-list": { - "labels": { - "is-active": "Ist aktiv", - "name": "Name" + "history": "Verlauf", + "clear-recent": "Alle kürzlichen löschen" } }, "account-changePassword": { "labels": { + "title": "Neues Passwort eingeben", + "login": "Anmelden", + "force-change-info": "Ihr Passwort ist abgelaufen. Sie müssen das Passwort ändern, um fortzufahren und den Manager zu nutzen", "current-password": "Aktuelles Passwort", "new-password": "Neues Passwort", - "repeat-password": "Passwort wiederholen", - "force-password-change": "Veranlassen Sie, dass dieser Benutzer bei der ersten Anmeldung sein Passwort ändert" + "repeat-password": "Neues Passwort wiederholen", + "cancel": "Abbrechen", + "save": "Ändern", + "fail": "Entschuldigung, wir konnten das Passwort für diesen Benutzer nicht zurücksetzen" }, "validations": { - "repeat-password": "Das neue Passwort stimmt nicht überein!", - "invalid-token": "Passwort zurücksetzen Token ist ungültig oder abgelaufen", - "password-too-weak": "Neues Passwort entspricht nicht einer oder mehreren Passwortsicherheitsrichtlinien:", - "passwordTooShort": "Passwörter müssen {{parameter}} oder mehr Zeichen lang sein", - "passwordRequiresLower": "Passwörter müssen mindestens einen Kleinbuchstaben enthalten ('a'-'z')", - "passwordRequiresUpper": "Passwörter müssen mindestens einen Großbuchstaben haben ('A'-'Z')", - "passwordRequiresDigit": "Passwörter müssen mindestens eine Ziffer haben ('0'-'9')", - "passwordRequiresNonAlphanumeric": "Passwörter müssen mindestens ein nicht alphanumerisches Zeichen enthalten" + "current-password": "Erforderlich", + "new-password": "Altes und neues Passwort sind identisch!", + "repeat-password": "Neue Passwörter stimmen nicht überein!" }, "placeholders": { "current-password": "Aktuelles Passwort eingeben", @@ -350,13 +364,23 @@ } }, "account-resetPassword": { - "subtitle": "Ändern Sie Ihr Passwort", + "subtitle": "Benutzerpasswort ändern", "labels": { "new-password": "Neues Passwort", - "repeat-password": "Passwort wiederholen" + "repeat-password": "Passwort wiederholen", + "force-password-change": "Diesen Benutzer zwingen, sein Passwort bei der nächsten Anmeldung zu ändern" }, "validations": { - "repeat-password": "Das neue Passwort stimmt nicht überein!" + "repeat-password": "Neue Passwörter stimmen nicht überein!", + "invalid-token": "Token zum Zurücksetzen des Passworts ist ungültig oder abgelaufen", + "password-too-weak": "Das neue Passwort entspricht nicht einer oder mehreren Passwort-Sicherheitsrichtlinien:", + "passwordTooShort": "Passwörter müssen {{parameter}} oder mehr Zeichen lang sein", + "passwordRequiresUniqueChars": "Passwörter müssen mindestens {{parameter}} verschiedene Zeichen verwenden", + "passwordRequiresLower": "Passwörter müssen mindestens einen Kleinbuchstaben ('a'-'z') enthalten", + "passwordRequiresUpper": "Passwörter müssen mindestens einen Großbuchstaben ('A'-'Z') enthalten", + "passwordRequiresDigit": "Passwörter müssen mindestens eine Ziffer ('0'-'9') enthalten", + "passwordRequiresNonAlphanumeric": "Passwörter müssen mindestens ein nicht-alphanumerisches Zeichen enthalten", + "recentPasswordUsed": "Sie haben dieses Passwort in der Vergangenheit verwendet. Wählen Sie ein anderes" }, "placeholders": { "new-password": "Neues Passwort eingeben", @@ -368,14 +392,22 @@ "labels": { "user-information": "Benutzerinformationen", "is-administrator": "Ist Administrator", - "account-type": "Kontentyp", - "login": "Einloggen", - "account-state": "Konto Zustand", - "account-email": "E-mail" + "account-type": "Kontotyp", + "login": "Anmeldung", + "account-state": "Kontostatus", + "account-email": "E-Mail", + "locked-state": "Gesperrter Zustand", + "status": "Status", + "verified": "Verifiziert", + "resend-link": "Link erneut senden", + "link-sent": "Der Link wurde gesendet", + "last-login-date": "Letztes Anmeldedatum" }, "placeholders": { - "account-type": "Wählen Sie aus...", - "email": "Voer email in" + "account-type": "Auswählen ...", + "email": "E-Mail eingeben", + "user-name": "Benutzernamen eingeben", + "status": "Auswählen ..." } }, "account-list": { @@ -383,20 +415,30 @@ "subtitle": "Sicherheitsdienst", "labels": { "name": "Name", - "account-type": "Kontentyp", - "login": "Einloggen", - "state": "Zustand" + "account-type": "Kontotyp", + "login": "Anmeldung", + "state": "Zustand", + "status": "Status" + } + }, + "account-api": { + "labels": { + "api-key": "API-Schlüssel", + "is-active": "ist aktiv" + }, + "placeholders": { + "api-key": "API-Schlüssel eingeben" } }, "role-detail": { - "subtitle": "Rolle details", + "subtitle": "Rollendetails", "labels": { "summary": "Zusammenfassung", "name": "Name", "description": "Beschreibung", "assigned-permissions": "Zugewiesene Berechtigungen", "permission-name": "Name", - "assigned-scopes": "Zugeordnete Bereiche", + "assigned-scopes": "Zugewiesene Bereiche", "no-permissions-assigned": "Keine Berechtigungen zugewiesen" }, "placeholders": { @@ -405,32 +447,32 @@ } }, "account-roles": { - "subtitle": "Zuweisen von Rollen", + "subtitle": "Rollen zuweisen", "labels": { - "select-roles": "Wählen Sie Rollen zuweisen", - "no-roles": "Keine Rollen zuweisen." + "select-roles": "Rollen zum Zuweisen auswählen", + "no-roles": "Keine Rollen zum Zuweisen" } }, "account-roles-list": { "title": "", "labels": { "assigned-roles": "Zugewiesene Rollen", - "no-assigned": "Keine Rollen zugewiesen." + "no-assigned": "Keine Rollen zugewiesen" } }, "permission-scopes": { - "subtitle": "Erlaubnis Scopes konfigurieren", + "subtitle": "Berechtigungsbereiche konfigurieren", "labels": { - "select-bounded-scopes": "Wählen Sie begrenzte Bereiche", - "selected": "Ausgewählte", - "scope-name": "Umfang der Name und die Parameter", - "no-scopes": "Keine Scopes." + "select-bounded-scopes": "Begrenzte Bereiche auswählen", + "selected": "Ausgewählt", + "scope-name": "Bereichsname und Parameter", + "no-scopes": "Keine Bereiche" } }, "role-permissions": { - "subtitle": "Zuweisen von Berechtigungen", + "subtitle": "Berechtigungen zuweisen", "labels": { - "select-permissions": "Wählen Sie Berechtigungen zuweisen" + "select-permissions": "Berechtigungen zum Zuweisen auswählen" } }, "new-role-wizard": { @@ -439,7 +481,7 @@ "summary": "Zusammenfassung", "name": "Name", "description": "Beschreibung", - "assign-permissions": "Zuweisen von Berechtigungen" + "assign-permissions": "Berechtigungen zuweisen" }, "placeholders": { "name": "Namen eingeben", @@ -448,44 +490,121 @@ }, "role-list": { "title": "Rollen", - "subtitle": "Security Service", + "subtitle": "Sicherheitsdienst", "labels": { "name": "Name" } }, + "oauthapps": { + "labels": { + "clientId": "Client-ID", + "displayName": "Anzeigename", + "type": "Typ", + "clientSecret": "Client-Geheimnis", + "assigned-permissions": "Zugewiesene Berechtigungen", + "redirectUris": "Weiterleitungs-URIs", + "postLogoutRedirectUris": "Post-Logout-Weiterleitungs-URIs" + }, + "placeholders": { + "clientId": "Client-ID eingeben", + "displayName": "Anzeigenamen eingeben", + "type": "Typ eingeben", + "clientSecret": "Client-Geheimnis eingeben" + } + }, + "oauthapps-list": { + "title": "OAuth-Anwendungen", + "subtitle": "Sicherheitsdienst" + }, + "oauthapps-detail": { + "title": "OAuth-Anwendung bearbeiten", + "title-new": "OAuth-Anwendung erstellen", + "subtitle": "Sicherheitsdienst", + "labels": { + "clientSecret-warning": "Achtung! Sie müssen das Geheimnis jetzt kopieren. Es wird nach dem Schließen des Fensters verborgen", + "urls": "URLs" + }, + "blades": { + "edit-redirectUris": { + "title": "Weiterleitungs-URIs", + "subtitle": "Weiterleitungs-URIs verwalten" + }, + "edit-postLogoutRedirectUris": { + "title": "Post-Logout-Weiterleitungs-URIs", + "subtitle": "Post-Logout-Weiterleitungs-URIs verwalten" + } + } + }, "login": { "labels": { - "sign-in": "Melden Sie sich bei {{title}} Manager", - "login": "Einloggen", + "sign-in": "Anmelden bei {{title}} Manager", + "login": "Anmeldung", "password": "Passwort", - "remember-me": "Erinnern Sie sich an mich", - "external-sign-in": "Melden Sie sich mit {{displayName}} an", - "forgot-password": "Haben Sie Ihr Passwort vergessen?", + "remember-me": "Angemeldet bleiben", + "external-sign-in": "Anmelden mit {{displayName}}", + "forgot-password": "Passwort vergessen?", "log-in": "Anmelden", - "or": "oder" + "log-in-placeholder": "Geben Sie Ihre E-Mail oder Ihren Benutzernamen ein", + "password-placeholder": "Geben Sie Ihr Passwort ein", + "azure-log-in-label": "Über Azure bei der Admin-Site anmelden", + "password-log-in-type": "Systembenutzer", + "or": "oder", + "signing-in": "Anmeldung läuft..." + } + }, + "forgotpassword": { + "title": "Passwort vergessen?", + "labels": { + "login": "Anmeldung oder E-Mail", + "description": "Wir senden Ihnen eine E-Mail mit Anweisungen zum Zurücksetzen Ihres Passworts", + "success": "E-Mail mit Anweisungen wurde an Sie gesendet", + "fail": "Entschuldigung, wir konnten das Passwort für diesen Benutzer nicht zurücksetzen", + "back": "Zurück", + "submit": "Absenden", + "time-limit": "Sie können es in {{countdown}} erneut versuchen", + "time-limit-end": "Sie können es jetzt erneut versuchen" + }, + "placeholders": { + "login-or-email": "Bitte geben Sie Anmeldung oder E-Mail ein" + } + }, + "access-denied": { + "title": "Zugriff verweigert", + "labels": { + "message": "Sie haben keinen Zugriff auf diese Ressource. Bitte kontaktieren Sie Ihren Administrator", + "button": "Mit anderen Anmeldedaten anmelden" + } + }, + "resetpassword": { + "title": "Passwort zurücksetzen", + "labels": { + "success": "Ihr Passwort wurde zurückgesetzt", + "fail": "Entschuldigung, wir konnten das Passwort für diesen Benutzer nicht zurücksetzen", + "submit": "Zurücksetzen", + "log-in": "Anmelden" } }, "license": { "title": "Aktuelle Lizenz", - "title-new": "Neue Lizenz aktivieren", + "title-new": "Neue Lizenzaktivierung", "license-info": "Lizenzinformationen", - "license-activation": "Aktivieren der Lizenz", - "labels": { - "info-running-no-license": "Diese Instanz von virto Commerce läuft unter der", - "info-open-source-license": "Open Source Community Lizenz.", - "info0": "Erwerb oder Erneuerung der Lizenz", - "info1": "Füllen Sie das Formular aus ", - "info2": "Wir werden uns sobald wie möglich mit Ihnen in Verbindung setzen.", - "info3": "Sobald Sie den Aktivierungscode und / oder die Lizenzdatei erhalten haben, füllen Sie eines der folgenden Aktivierungsfelder aus.", - "info4": "Das System zeigt Ihnen die neuen Lizenzinformationen an. Überprüfen Sie diese und klicken Sie auf Aktivieren, um zu bestätigen.", - "customer": "Lizenz ausgestellt auf", + "license-activation": "Lizenzaktivierung", + "labels": { + "info-running-no-license": "Diese Instanz von Virto Commerce läuft auf", + "info-open-source-license": "Open Source Community Lizenz", + "info0": "Lizenz erwerben oder erneuern:", + "info1": "Reichen Sie das ", + "info2": "Wir werden Ihre Anfrage bearbeiten und Sie bald kontaktieren", + "info3": "Sobald Sie den \"Aktivierungscode\" und/oder die Lizenzdatei erhalten haben, füllen Sie eines der Aktivierungsfelder unten aus", + "info4": "Das System zeigt Ihnen die neuen Lizenzinformationen an. Überprüfen Sie diese und klicken Sie auf \"Aktivieren\", um zu bestätigen", + "customer": "Lizenz ausgestellt für", "type": "Typ", "expiration": "Ablauf", "email": "Kunden-E-Mail", - "request-license": "License Request Form.", - "code-descr": "Geben Sie den erhaltenen Aktivierungscode ein und drücken Sie [Enter]. Dies ist die schnellste Aktivierungsmethode. (Benötigt Internetverbindung)", - "file-descr": "Optional können Sie die erhaltene Lizenzdatei hochladen. (Off-line-Aktivierung)", - "upload-progress": "Fortschritte hochladen", + "request-license": "Lizenzantragsformular", + "code-descr": "Geben Sie den erhaltenen \"Aktivierungscode\" ein und drücken Sie [Enter]. Dies ist die schnellste Methode zur Lizenzaktivierung. (Internetverbindung erforderlich)", + "file-descr": "Optional können Sie die erhaltene Lizenzdatei bereitstellen. (Offline-Aktivierung)", + "upload-progress": "Upload-Fortschritt", "errors": "Aktivierungsfehler" }, "placeholders": { @@ -494,21 +613,21 @@ }, "new-account-wizard": { "labels": { - "email": "E-mail", - "login": "Einloggen", + "login": "Anmeldung", + "email": "E-Mail", "password": "Passwort", "repeat-password": "Passwort wiederholen", - "assign-roles": "Zuweisen von Rollen" + "assign-roles": "Rollen zuweisen" }, "placeholders": { - "email": "E-Mail-Adresse eingeben", - "login": "Einloggen eingeben", + "email": "E-Mail eingeben", + "login": "Anmeldung eingeben", "password": "Neues Passwort eingeben", "repeat-password": "Neues Passwort wiederholen" }, "validations": { - "repeat-password": "Eingegebene Passwörter stimmen nicht überein!", - "password-too-weak": "Das eingegebene Passwort entspricht nicht einer oder mehreren Passwortsicherheitsrichtlinien:" + "repeat-password": "Die eingegebenen Passwörter stimmen nicht überein!", + "password-too-weak": "Das eingegebene Passwort entspricht nicht einer oder mehreren Passwort-Sicherheitsrichtlinien:" } }, "security-main": { @@ -519,7 +638,7 @@ "title": "Einstellungen" }, "setting-dictionary": { - "subtitle": "Wörterbuch Werte verwalten", + "subtitle": "Wörterbucheinträge verwalten", "labels": { "new-value": "Bitte Wert eingeben", "current-values": "Aktuelle Werte", @@ -534,61 +653,93 @@ } }, "settings-detail": { - "title": "Modul Einstellungen", - "hide-description": "Verstecken" + "title": "Einstellungswerte", + "hide-description": "Ausblenden" }, "settingGroup-list": { "title": "Einstellungen", - "bread-crumb-top": "Alle" + "bread-crumb-top": "Alle Einstellungen" + }, + "settings-uploader": { + "drag-drop-comment": "Datei hierher ziehen und ablegen", + "or": "oder", + "browse-your-files": "Ihre Dateien durchsuchen" }, "localizable-setting-value-list": { - "subtitle": "Wörterbuch Werte verwalten" + "subtitle": "Wörterbucheinträge verwalten" }, "localizable-setting-value-details": { - "title": "Wörterbuch wert bearbeiten", + "title": "Wörterbucheintrag bearbeiten", "alias": "Systemwert" }, "user-profile": { - "title": "User Profil", + "title": "Benutzerprofil", "labels": { "language": "Sprache", + "language-description": "Anzeigesprache. Leer lassen, um Browser- oder Fallback-Sprache zu verwenden", "regional-format": "Regionales Format", - "timezone": "Zeitzone" + "regional-format-description": "Regionales Format für Zahlen, Währung, Datum und Uhrzeit. Leer lassen, um Browser- oder Fallback-Regionalformat zu verwenden", + "time-zone": "Zeitzone", + "time-zone-description": "Aktuelle Benutzer-Zeitzone im IANA-Format (tz-Datenbank). Wählen Sie die nächstgelegene Stadt in Ihrer Zeitzone. Leer lassen, um Browser- oder Fallback-Zeitzone zu verwenden", + "use-time-ago": "Zeitpunkt in 'vor X Zeit'-Format angeben, wenn möglich", + "full-date-threshold-group": "Vollständiges Datumsformat für Daten verwenden, die älter sind als...", + "full-date-threshold-description": "Numerischer Wert der Zeiteinheiten", + "full-date-threshold-unit-description": "Zeiteinheit (z.B. Stunden oder Jahre)" + }, + "placeholders": { + "full-date-threshold": "Schwellenwert eingeben", + "full-date-threshold-unit": "Schwellenwerteinheit auswählen" + }, + "full-date-threshold-units": { + "Never": "Nie", + "Seconds": "Sekunden", + "Minutes": "Minuten", + "Hours": "Stunden", + "Days": "Tage", + "Weeks": "Wochen", + "Months": "Monate", + "Quarters": "Quartale", + "Years": "Jahre" } } }, "templates": { "sampleDataChoose": { "labels": { - "choose-sample-data-type": "Wählen Sie beispieldaten Typ", + "choose-sample-data-type": "Beispieldatentyp auswählen", "size": "Größe", "version": "Version" } }, "sampleDataInitialization": { "labels": { - "sample-data-initialization": "Beispieldaten Initialisierung", - "starting-initialization": "Starten von Beispieldaten Initialisierung...", + "sample-data-initialization": "Beispieldaten-Initialisierung", + "starting-initialization": "Starte Beispieldaten-Initialisierung...", "errors": "Fehler", - "start": "Starten", + "start": "Start", "end": "Ende" } }, "licensing": { - "license-absent": "Common License", - "license-present": "{{type}} Lizenz ist bis zum {{expirationDate | amParse | date}}", - "community": "Sie nutzen die Community Edition. klicken Sie hier um eine kommerzielle Lizenz zu beantragen.", - "expired": "Ihre Lizenz ist am {{expirationDate | amParse | date}} abgelaufen, bitte erneuern.", - "purchase": "Kauf", - "renew": "Aktualisieren", - "expiration-date": "Gültig bis" + "license-absent": "Community-Lizenz", + "license-present": "{{type}}-Lizenz, läuft am {{expirationDate | amParse | date}} ab", + "community": "Community-Edition wird ausgeführt, klicken Sie hier, um eine kommerzielle Lizenz anzufordern", + "expired": "Ihre Lizenz ist am {{expirationDate | amParse | date}} abgelaufen, bitte erneuern Sie sie", + "purchase": "Kaufen", + "renew": "Erneuern", + "expiration-date": "Ablaufdatum" + }, + "password-expiry": { + "expire-days": "Um Ihr Konto zu schützen, müssen Sie Ihr Passwort in {{count}} Tagen ändern.", + "expire-today": "Um Ihr Konto zu schützen, müssen Sie Ihr Passwort heute ändern.", + "change-link": "Jetzt ändern" }, "modulesAutoInstallation": { "labels": { - "module-auto-installation": "Module automatische Installation", - "loading": "Abrufen der Module Informationen...", - "finished": "Installation abgeschlossen. Klicken Sie auf Neu starten, um fortzufahren.", - "start": "Starten", + "module-auto-installation": "Automatische Modulinstallation", + "loading": "Modulinformationen werden abgerufen...", + "finished": "Installation abgeschlossen. Klicken Sie auf Neustart, um fortzufahren", + "start": "Start", "end": "Ende" } } @@ -596,7 +747,7 @@ "widgets": { "operations": { "title": "Änderungen", - "blade-subtitle": "Änderunggeschichte" + "blade-subtitle": "Änderungsverlauf" }, "dynamicProperty": { "title": "Dynamische Eigenschaften" @@ -605,8 +756,8 @@ "title": "Einstellungen" }, "accountApi": { - "title": "API-Konten", - "blade-subtitle": "API-Konten" + "title": "API-Schlüssel", + "blade-subtitle": "API-Schlüssel" }, "accountRoles": { "title": "Rollen", @@ -615,12 +766,12 @@ }, "dialogs": { "folders-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Dateien oder Ordner löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählten Ordner oder Dateien löschen möchten?" }, "properties-save": { "title": "Änderungen speichern", - "message": "Die Eigenschaften wurden geändert. Möchten Sie die Änderungen bestätigen?" + "message": "Die Eigenschaften wurden geändert. Möchten Sie die Änderungen speichern?" }, "notification-template-save": { "title": "Änderungen speichern", @@ -631,79 +782,265 @@ "message": "Die Rolle wurde geändert. Möchten Sie die Änderungen speichern?" }, "roles-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Rollen löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählten Rollen löschen möchten?" }, "account-save": { "title": "Änderungen speichern", "message": "Das Konto wurde geändert. Möchten Sie die Änderungen speichern?" }, "account-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Konten löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählten Konten löschen möchten?" + }, + "oauthapps-save": { + "title": "Änderungen speichern", + "message": "Die OAuth-Anwendung wurde geändert. Möchten Sie die Änderungen speichern?" + }, + "oauthapps-delete": { + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählte OAuth-Anwendung löschen möchten?" }, "dynamic-property-delete": { - "title": "Bestätigung löschen", - "message": "Sind Sie sicher, dass Sie diese dynamische Eigenschaft löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie diese dynamische Eigenschaft löschen möchten?" }, "settings-value-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählten Werte löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählten Werte löschen möchten?" }, "settings-save": { "title": "Änderungen speichern", - "message": "Die Einstellungen wurden geändert. Möchten Sie die Änderungen bestätigen?" + "message": "Die Einstellungen wurden geändert. Möchten Sie die Änderungen speichern?" }, "settings-delete": { - "title": "Bestätigung löschen", + "title": "Löschen bestätigen", "message": "Die Einstellungen wurden geändert. Möchten Sie die Änderungen speichern?" }, "localizable-setting-value-delete": { - "title": "Bestätigung löschen", - "message": "Möchten Sie die ausgewählte Wörterbuch Werte löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie die ausgewählten Wörterbucheinträge löschen möchten?" }, "localizable-setting-value-save": { "title": "Änderungen speichern", - "message": "This dictionary value has been modified. Do you want to save changes?" + "message": "Dieser Wörterbucheintrag wurde geändert. Möchten Sie die Änderungen speichern?" }, "email-sending-success": { - "title": "Erfolg senden", - "message": "E-Mail wurde erfolgreich gesendet." + "title": "Senden erfolgreich", + "message": "E-Mail wurde erfolgreich gesendet!" }, "email-send-error": { "title": "Fehler beim Senden", - "message": "E-Mail wurde nicht gesendet! Fehler {{error}}" + "message": "E-Mail wurde nicht gesendet! Fehler: {{error}}" }, "dictionary-items-delete": { - "title": "Bestätigung löschen", - "message": "Sind Sie sicher, dass Sie die {{quantity}} ausgewählte Wörterbuch(s) Element(e) löschen wollen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie {{quantity}} ausgewählte(n) Wörterbucheintrag/-einträge löschen möchten?" }, "module-action": { - "title-install": "Installieren bestätigung", - "title-update": "Aktualisierung bestätigung", - "title-delete": "Bestätigung der Deinstallation", - "message0-install": "Sie werden jetzt installieren.", - "message0-update": "Sie werden jetzt aktualisieren.", - "message0-delete": "Sie werden jetzt deinstallieren.", - "message1-install": "Die folgenden Abhängigkeiten wird auch installiert werden", - "message1-delete": "Die folgenden je Module werden auch deinstalliert werden.", + "title-install": "Installation bestätigen", + "title-update": "Aktualisierung bestätigen", + "title-delete": "Deinstallation bestätigen", + "message0-install": "Sie sind dabei, Folgendes zu installieren:", + "message0-update": "Sie sind dabei, Folgendes zu aktualisieren:", + "message0-delete": "Sie sind dabei, Folgendes zu deinstallieren:", + "message1-install": "Die folgenden Abhängigkeiten werden ebenfalls installiert:", + "message1-delete": "Die folgenden abhängigen Module werden ebenfalls deinstalliert:", "message2-install": "Auswahl und Abhängigkeiten installieren?", - "message2-update": "Auswahl aktualisieren und Abhängigkeiten?", - "message2-delete": "Deinstallieren Sie diese und alle je Module?" + "message2-update": "Auswahl und Abhängigkeiten aktualisieren?", + "message2-delete": "Dieses und ALLE abhängigen Module deinstallieren?" }, "module-delete": { - "title": "Bestätigung löschen", - "message": "Sind Sie sicher, dass Sie dieses Modul deinstallieren wollen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie dieses Modul deinstallieren möchten?" }, "api-key-delete": { - "title": "Bestätigung löschen", - "message": "Sind Sie sicher, dass Sie diese API-Schlüssel löschen?" + "title": "Löschen bestätigen", + "message": "Sind Sie sicher, dass Sie diesen API-Schlüssel löschen möchten?" + }, + "app-restart": { + "title": "Anwendungsbeendigung", + "message": "Starten Sie die Anwendung neu, um die Änderungen zu übernehmen. Je nach Ihrem Hosting-Dienst kann die Anwendung automatisch neu gestartet werden oder Sie müssen dies manuell tun. Sind Sie sicher, dass Sie die Anwendung jetzt schließen möchten?" + }, + "error-details": { + "title": "Fehlerdetails" + }, + "impersonate-no-url": { + "title": "Anmeldung im Namen von", + "message": "Die Shop-URL wurde nicht zu den Shop-Einstellungen hinzugefügt. Bitte kontaktieren Sie den Administrator" + }, + "asset-upload-error": { + "title": "Fehler beim Hochladen", + "message": "Wählen Sie einen Ordner aus! Eine Datei kann nicht im Stammverzeichnis hochgeladen werden!" + }, + "run-import": { + "title": "Import bestätigen", + "message": "Sind Sie sicher, dass Sie Beispieldaten importieren möchten?" + }, + "create-folder": { + "title": "Ein Ordnername muss den folgenden Benennungsregeln entsprechen:\n Der Ordnername muss zwischen 3 und 63 Zeichen lang sein.\n Der Ordnername muss mit einem Buchstaben oder einer Zahl beginnen und darf nur Buchstaben, Zahlen und Bindestriche (-) enthalten.\n Jeder Bindestrich (-) muss unmittelbar vor und nach einem Buchstaben oder einer Zahl stehen; aufeinanderfolgende Bindestriche sind nicht erlaubt.\n Alle Buchstaben in einem Ordnernamen müssen klein geschrieben sein" + }, + "storefront-cache-reset-successfully": { + "title": "Cache zurückgesetzt", + "message": "Der Cache der Frontend-Anwendung wurde erfolgreich zurückgesetzt" + } + }, + "commands": { + "login-on-behalf": "Im Namen von anmelden", + "reset-storefront-cache": "Cache zurücksetzen" + } + }, + "permissions": { + "platform:asset:access": "Ressourcen im Hauptmenü anzeigen", + "platform:asset:delete": "Platform-Ressourcen löschen", + "platform:asset:update": "Platform-Ressourcen ändern", + "platform:asset:create": "Neue Platform-Ressourcen hochladen", + "platform:asset:read": "Platform-Ressourcen herunterladen", + "platform:module:read": "Moduldetails anzeigen", + "platform:module:access": "Module im Hauptmenü anzeigen", + "platform:module:manage": "Module installieren/deinstallieren", + "platform:setting:read": "Platform-Einstellungen lesen", + "platform:setting:access": "Einstellungen im Hauptmenü anzeigen", + "platform:setting:update": "Platform-Einstellungen ändern", + "platform:dynamic_properties:read": "Details dynamischer Eigenschaften anzeigen", + "platform:dynamic_properties:create": "Neue dynamische Eigenschaften erstellen", + "platform:dynamic_properties:access": "Dynamische Eigenschaften im Hauptmenü anzeigen", + "platform:dynamic_properties:update": "Dynamische Eigenschaften ändern", + "platform:dynamic_properties:delete": "Dynamische Eigenschaften löschen", + "platform:security:read": "Benutzer- und Rollendetails anzeigen", + "platform:security:create": "Neue Benutzer und Rollen erstellen", + "platform:security:access": "Sicherheit im Hauptmenü anzeigen", + "platform:security:update": "Benutzer und Rollen ändern", + "platform:security:delete": "Benutzer und Rollen löschen", + "platform:security:verifyEmail": "Verifizierten Status ändern und Verifizierungs-E-Mail senden", + "background_jobs:manage": "Zugriff auf die Hangfire-Konsole", + "platform:exportImport:access": "Export/Import im Hauptmenü anzeigen", + "platform:import": "Platform- und Moduldaten importieren", + "platform:export": "Platform- und Moduldaten exportieren", + "platform:security:loginOnBehalf": "Im Namen eines Kunden anmelden" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Sprachen", + "description": "Liste der verfügbaren Sprachen" + } + } + }, + "ModulesAutoInstalled": { + "description": "Die Markierung zeigt an, dass die Module automatisch installiert wurden", + "title": "Module installiert" + }, + "ModulesAutoInstallState": { + "title": "Status der automatischen Modulinstallation", + "description": "Aktueller Status des Assistenten für die automatische Modulinstallation" + }, + "SetupStep": { + "title": "Aktueller Einrichtungsschritt", + "description": "Aktueller Schritt im Einrichtungsassistenten" + }, + "SampleDataState": { + "title": "Status der Beispieldaten", + "description": "Aktueller Status des Beispieldaten-Assistenten" + }, + "SendDiagnosticData": { + "title": "Diagnosedaten senden", + "description": "VC-Plattform-Diagnosedaten an VC senden. Kann nur mit dem Kauf einer Lizenz deaktiviert werden" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Wörterbuch für mögliche Kontotypen", + "title": "Kontotypen" + }, + "DefaultAccountType": { + "title": "Standard-Kontotyp", + "description": "Standardwert für den Kontotyp beim Erstellen eines neuen Kontos" + }, + "DefaultAccountStatus": { + "title": "Standard-Kontostatus", + "description": "Standardwert für den Kontostatus beim Erstellen eines neuen Kontos" + }, + "DefaultExternalAccountStatus": { + "title": "Standard-Status für externe Konten", + "description": "Standardwert für den Kontostatus beim Erstellen eines neuen Kontos während der externen Anmeldung" + }, + "EnablePruneExpiredTokensJob": { + "description": "Aktiviert das Entfernen abgelaufener und ungültiger Token/Autorisierungen", + "title": "Abgelaufene Token entfernen" + }, + "CronPruneExpiredTokensJob": { + "description": "Cron-Ausdruck für den Job zum Entfernen abgelaufener und ungültiger Token/Autorisierungen", + "title": "Cron für den Token-Entfernungsjob" + }, + "FileExtensionsBlackList": { + "description": "Von der Plattform verbotene Dateierweiterungen für den Upload (zusätzlich zu 'FileExtensionsBlackList' in appsettings.json)", + "title": "Schwarze Liste" + }, + "FileExtensionsWhiteList": { + "description": "Von der Plattform erlaubte Dateierweiterungen für den Upload (zusätzlich zu 'FileExtensionsWhiteList' in appsettings.json)", + "title": "Weiße Liste" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Gespeicherter Zustand des Hauptmenüs", + "title": "Gespeicherter Zustand des Hauptmenüs" + } + }, + "Language": { + "description": "Standardsprache (zweistelliger Code aus ISO 639-1, Groß-/Kleinschreibung wird ignoriert). Beispiel: de, en", + "title": "Sprache" + }, + "RegionalFormat": { + "description": "Standardregionalformat (CLDR-Gebietsschema-Code, mit Bindestrich oder Unterstrich als Trennzeichen, Groß-/Kleinschreibung wird ignoriert). Beispiel: de, de_DE, sr_Cyrl, sr_Cyrl_RS", + "title": "Regionales Format" + }, + "TimeZone": { + "description": "Standard-Zeitzone (IANA-Zeitzonenname [tz-Datenbank], genau wie in der Datenbank, Groß-/Kleinschreibung beachten). Beispiele: Europe/Berlin, America/New_York", + "title": "Zeitzone" + }, + "UseTimeAgo": { + "description": "Wenn auf true gesetzt (Standard), zeigt das System das Datum im Format 'vor einigen Sekunden' an, wann immer möglich", + "title": "Zeit-Ago-Format verwenden, wenn möglich" + }, + "FullDateThreshold": { + "description": "Das Zeit-Ago-Format wechselt nach einer bestimmten Anzahl von Zeiteinheiten zu einem vollständigen Datumsformat", + "title": "Schwellenwert für vollständiges Datum" + }, + "FullDateThresholdUnit": { + "description": "Einheit des Schwellenwerts für vollständiges Datum", + "title": "Einheit des Schwellenwerts für vollständiges Datum" + }, + "Customization": { + "description": "JSON enthält Personalisierungseinstellungen der Manager-Benutzeroberfläche", + "title": "Die Anpassung der Manager-Benutzeroberfläche" + }, + "ShowMeridian": { + "description": "Zeitmeridian-Anzeige (AM oder PM) anzeigen", + "title": "Zeitmeridian anzeigen" + } + }, + "Cache": { + "Enabled": { + "description": "Diese Einstellung ermöglicht es Ihnen, das Caching für die gesamte Plattformanwendung global zu aktivieren und zu deaktivieren", + "title": "Cache global aktivieren oder deaktivieren" + }, + "AbsoulteExpiration": { + "description": "Gibt die maximale Zeit an, für die die zwischengespeicherten Daten im Cache gespeichert werden. Format: [-][d.]hh:mm:ss[.fffffff]", + "title": "Globale Lebensdauer von Objekten im Cache" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Kontostatus", + "description": "Kontostatus ändern" + } } - // temproraly disabled restart feature, show english dialog version - //"app-restart": { - // "title": "Anwendungsneustart", - // "message": "Sind Sie sicher, dass Sie die Anwendung neu starten möchten?" - //} } } } diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Common.json index 9ebf05946a0..541bb518937 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Common.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Common.json @@ -41,14 +41,14 @@ "restart": "Restart", "save": "Save", "send": "Send", - "select-all": "Select All", + "select-all": "Select all", "set-to-default": "Set to default", "start-export": "Start export", "settings": "Settings", "sign-out": "Sign out", "undo": "Undo", "uninstall": "Uninstall", - "unselect-all": "Unselect All", + "unselect-all": "Unselect all", "update": "Update", "upload": "Upload", "yes": "Yes", @@ -67,7 +67,7 @@ "time": "Time", "now": "Now", "date": "Date", - "see-details": "See details", + "see-details": "View details", "dismiss": "Dismiss", "hide-empty-property-values": "Hide empty values", "show-empty-property-values": "Show empty values", @@ -81,7 +81,7 @@ "no-data": "No data", "count": "Count", "loading": "Loading...", - "item-not-found": "Error: Not Found" + "item-not-found": "Error: Not found" }, "placeholders": { "n-a": "N/A", @@ -98,39 +98,39 @@ }, "properties": { "short-text": { - "title": "Short Text", - "description": "Text values less than 1024 chars." + "title": "Short text", + "description": "Text values under 1024 characters" }, "long-text": { - "title": "Long Text", - "description": "Huge amount text without size limit." + "title": "Long text", + "description": "Unlimited text with no size restriction" }, "integer": { "title": "Integer", - "description": "Integer number." + "description": "Integer number" }, "decimal": { "title": "Decimal Number", - "description": "Decimal number with precision 18 and scale 4." + "description": "Decimal number with a precision of 18 and a scale of 4" }, "date-time": { "title": "Date time", - "description": "Select date." + "description": "Select date" }, "boolean": { "title": "Boolean", - "description": "Switch type." + "description": "Switch type" }, "html": { "title": "HTML", - "description": "HTML markup." + "description": "HTML markup" }, "undefined": { "title": "Undefined" }, "image": { "title": "Image", - "description": "Image type." + "description": "Image type" } }, "genericValueInput": { @@ -163,26 +163,26 @@ }, "validators": { "uriWithoutQuery": { - "error": "Invalid URI format. Make sure URI doesn't have query params." + "error": "Invalid URI format. Ensure the URI doesn't have query parameters" } }, "errors": { "generic-error": "Error", - "400": "Bad Request", + "400": "Bad request", "401": "Unauthorized", "403": "Forbidden", - "404": "Not Found", - "405": "Method Not Allowed", - "406": "Not Acceptable", - "407": "Proxy Authentication Required", - "408": "Request Timeout", + "404": "Not found", + "405": "Method not allowed", + "406": "Not acceptable", + "407": "Proxy authentication required", + "408": "Request timeout", "409": "Conflict", - "429": "Too Many Requests", - "500": "Internal Server Error", - "501": "Not Implemented", - "502": "Bad Gateway", - "503": "Service Unavailable", - "504": "Gateway Timeout" + "429": "Too many requests", + "500": "Internal server error", + "501": "Not implemented", + "502": "Bad gateway", + "503": "Service unavailable", + "504": "Gateway timeout" } } } diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Platform.json index beebdbec619..881815fd060 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Platform.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/en.VirtoCommerce.Platform.json @@ -49,7 +49,7 @@ "select-files": "Select files", "drag-note": "Drag and drop files here", "progress": "Progress", - "asset-uploaded": "Asset(s) uploaded." + "asset-uploaded": "Asset(s) uploaded" }, "placeholders": { "image-url": "Paste file URL here" @@ -66,7 +66,7 @@ "title": "Dynamic object types", "subtitle": "Pick object type to manage dynamic properties", "labels": { - "no-objects": "No objects supports dynamic properties yet." + "no-objects": "No objects support dynamic properties yet" } }, "dynamicProperty-detail": { @@ -82,7 +82,7 @@ "description": "Description", "display-order": "Display order", "display-name": "Display name", - "value-type": "Value Type", + "value-type": "Value type", "dictionary-values": "Dictionary values", "manage-dictionary": "Manage dictionary" }, @@ -92,15 +92,15 @@ "display-order": "Display order" }, "validations": { - "multivalue": "Multivalue property can have only ShortText, Integer or Decimal value type.", - "multilingual": "Only text or HTML value can be multilingual.", - "dictionary": "Only dictionaries of value type ShortText are supported." + "multivalue": "Multivalue property can have only ShortText, Integer or Decimal value type", + "multilingual": "Only text or HTML value can be multilingual", + "dictionary": "Only dictionaries of the ShortText value type are supported" } }, "dynamicProperty-list": { "subtitle": "Manage dynamic properties", "labels": { - "no-properties": "No dynamic properties yet." + "no-properties": "No dynamic properties yet" } }, "notifications-menu": { @@ -123,7 +123,7 @@ "dictionary-name": "Duplicate name found", "localized-values-required": "Required", "localized-values": "Duplicate name found", - "dictionary": "Only dictionaries of value type ShortText are supported." + "dictionary": "Only dictionaries of the ShortText value type are supported" }, "placeholders": { "dictionary-name": "Enter name", @@ -135,7 +135,7 @@ "subtitle": "", "labels": { "header": "Properties values", - "no-properties": "This entity doesn't have any dynamic properties yet. Click 'Types of properties' and create some properties. Close and reopen current entity view to get dynamic properties loaded." + "no-properties": "This entity doesn't have any dynamic properties yet. Click 'Types of properties' and create some properties. Close and reopen current entity view to load dynamic properties" } }, "edit-array": { @@ -156,7 +156,7 @@ "labels": { "platform-entries": "Platform entries", "choose-modules": "Choose modules to export", - "download-url": "Download Url", + "download-url": "Download URL", "errors": "Errors", "start": "Start", "end": "End" @@ -184,8 +184,8 @@ "title": "Data import", "labels": { "start-import": "Start import", - "select-file": "Select .zip file to import. The file must be produced by Commerce Manager data export.", - "drag-note": "Drag and drop .zip file to import. The file must be produced by Commerce Manager data export.", + "select-file": "Select .zip file to import. The file must be produced by Commerce Manager data export", + "drag-note": "Drag and drop .zip file to import. The file must be produced by Commerce Manager data export", "upload-failed": "Upload failed", "upload-progress": "Upload progress", "import-progress": "Import progress", @@ -193,7 +193,7 @@ "import-data-information": "Import data information", "author": "Author", "data-file-created": "Data file created", - "created-platform-version": "Created in platform version", + "created-platform-version": "Created in Platform version", "platform-entries": "Platform entries", "choose-modules": "Choose modules to import", "no-data": "No data", @@ -225,11 +225,11 @@ "menu": { "export": { "title": "Export", - "description": "Data will be saved out to a file so it can later be imported." + "description": "Data will be saved out to a file so it can be imported later" }, "import": { "title": "Import", - "description": "Import data from an exported file." + "description": "Import data from an exported file" } } }, @@ -251,8 +251,8 @@ "start": "Start", "end": "End", "progress-messages": "Progress messages", - "process-completed": "Module installation process completed.", - "restart-application": "Restart the application now or later." + "process-completed": "Module installation process completed", + "restart-application": "Restart the application now or later" } }, "module-detail": { @@ -261,9 +261,9 @@ "i-accept-the": "I accept the", "license-link": "license", "license": "License", - "agreement": "agreement.", + "agreement": "agreement", "install-from-file": "Install / update module from file", - "select-module-file": "Upload a module (.zip) file from outside the central modules repository", + "select-module-file": "Upload a module (.zip) file from an external source outside the central modules repository", "upload-progress": "Upload progress", "module-info": "Module info", "title": "Title", @@ -273,21 +273,22 @@ "authors": "Authors", "id": "ID", "version": "Version", - "project-information": "Project Information", + "project-information": "Project information", "description": "Description", - "platform-version": "Platform Version", + "platform-version": "Platform version", "dependencies": "Dependencies", "optional-dependencies": "Optional dependencies", "tags": "Tags", "install-version": "Install version", - "errors": "Errors" + "errors": "Errors", + "update-version": "Update {{id}} to" } }, "modules-main": { "title": "Modules", "labels": { "updates": "Updates", - "available": "Available", + "browse": "Browse", "installed": "Installed", "withErrors": "Errors", "advanced": "Advanced" @@ -296,19 +297,19 @@ "modules-list": { "subtitle": "Modules management", "labels": { - "grouping": "Show Module bundles", + "grouping": "Show module bundles", "ungrouped": "Other", - "no-updates": "No updates found.", - "no-modules-part1": "No new Modules to install.", - "no-installed-modules": "No installed Modules found.", + "no-updates": "No updates found", + "no-modules": "No new modules to install", + "no-installed-modules": "No installed modules found", "icon": "Icon", "up-to-date": "Module is up to date", "update-available": "Update available for this module", "module": "Module", "version": "Version", "author": "Author", - "installed": "Installed Modules", - "manual-install-warning": "Warning! Manually installed modules will not start because RefreshProbingFolderOnStart set to false." + "installed": "Installed modules", + "manual-install-warning": "Warning! Manually installed modules will not start because RefreshProbingFolderOnStart is set to false" } }, "history": { @@ -342,13 +343,13 @@ "labels": { "title": "Please enter a new password", "login": "Login", - "force-change-info": "Your password has expired. You must change the password to continue using the manager.", + "force-change-info": "Your password has expired. You must change the password to continue using the manager", "current-password": "Current password", "new-password": "New password", "repeat-password": "Repeat new password", "cancel": "Cancel", "save": "Change", - "fail": "Sorry, we could't reset password for this user." + "fail": "Sorry, we could't reset password for this user" }, "validations": { "current-password": "Required", @@ -371,14 +372,14 @@ "validations": { "repeat-password": "New passwords do not match!", "invalid-token": "Reset password token is invalid or expired", - "password-too-weak": "New password does not comply one or more password security policies:", + "password-too-weak": "New password does not comply with one or more password security policies:", "passwordTooShort": "Passwords must be {{parameter}} or more characters long", "passwordRequiresUniqueChars": "Passwords must use at least {{parameter}} different characters", "passwordRequiresLower": "Passwords must have at least one lowercase ('a'-'z')", "passwordRequiresUpper": "Passwords must have at least one uppercase ('A'-'Z')", "passwordRequiresDigit": "Passwords must have at least one digit ('0'-'9')", "passwordRequiresNonAlphanumeric": "Passwords must have at least one non alphanumeric character", - "recentPasswordUsed": "You have used this password in the past. Choose another one." + "recentPasswordUsed": "You have used this password in the past. Choose another one" }, "placeholders": { "new-password": "Enter new password", @@ -386,7 +387,7 @@ } }, "account-detail": { - "title-new": "New Account", + "title-new": "New account", "labels": { "user-information": "User information", "is-administrator": "Is administrator", @@ -421,11 +422,11 @@ }, "account-api": { "labels": { - "api-key": "Api key", + "api-key": "API key", "is-active": "is active" }, "placeholders": { - "api-key": "Enter an Api key" + "api-key": "Enter API key" } }, "role-detail": { @@ -448,14 +449,14 @@ "subtitle": "Assign roles", "labels": { "select-roles": "Select roles to assign", - "no-roles": "No roles to assign." + "no-roles": "No roles to assign" } }, "account-roles-list": { "title": "", "labels": { "assigned-roles": "Assigned roles", - "no-assigned": "No roles assigned." + "no-assigned": "No roles assigned" } }, "permission-scopes": { @@ -464,7 +465,7 @@ "select-bounded-scopes": "Select bounded scopes", "selected": "Selected", "scope-name": "Scope name and parameters", - "no-scopes": "No scopes." + "no-scopes": "No scopes" } }, "role-permissions": { @@ -474,7 +475,7 @@ } }, "new-role-wizard": { - "title": "New Role", + "title": "New role", "labels": { "summary": "Summary", "name": "Name", @@ -495,7 +496,7 @@ }, "oauthapps": { "labels": { - "clientId": "Client id", + "clientId": "Client Id", "displayName": "Display name", "type": "Type", "clientSecret": "Client secret", @@ -504,7 +505,7 @@ "postLogoutRedirectUris": "Post logout redirect URIs" }, "placeholders": { - "clientId": "Input client id", + "clientId": "Input client Id", "displayName": "Input display name", "type": "Input type", "clientSecret": "Input client secret" @@ -519,17 +520,17 @@ "title-new": "Create OAuth application", "subtitle": "Security service", "labels": { - "clientSecret-warning": "Warning! You must copy the secret now. It will be hidden after closing the blade.", - "urls": "Urls" + "clientSecret-warning": "Warning! You must copy the secret now. It will be hidden after closing the blade", + "urls": "URLs" }, "blades": { "edit-redirectUris": { - "title": "Redirect uris", - "subtitle": "Manage redirect uris" + "title": "Redirect URIs", + "subtitle": "Manage redirect URIs" }, "edit-postLogoutRedirectUris": { - "title": "Post logout redirect uris", - "subtitle": "Manage post logout redirect uris" + "title": "Post logout redirect URIs", + "subtitle": "Manage post logout redirect URIs" } } }, @@ -544,7 +545,7 @@ "log-in": "Log in", "log-in-placeholder": "Enter your email or user name", "password-placeholder": "Enter your password", - "azure-log-in-label": "Login to admin site through Azure", + "azure-log-in-label": "Log in to admin site through Azure", "password-log-in-type": "System user", "or": "or", "signing-in": "Signing in..." @@ -554,22 +555,22 @@ "title": "Forgot your password?", "labels": { "login": "Login or email", - "description": "We will send you an email with instructions on how to reset your password.", - "success": "Email with instructions has been sent to you.", - "fail": "Sorry, we could't reset password for this user.", + "description": "We will send you an email with instructions on how to reset your password", + "success": "Email with instructions has been sent to you", + "fail": "Sorry, we could't reset password for this user", "back": "Back", "submit": "Submit", "time-limit": "You can try again in {{countdown}}", - "time-limit-end": "You can try again now." + "time-limit-end": "You can try again now" }, "placeholders": { - "login-or-email": "Please enter login or email" + "login-or-email": "Enter login or email" } }, "access-denied": { "title": "Access denied", "labels": { - "message": "You don't have access to this resource. Please contact your administrator.", + "message": "You don't have access to this resource. Please contact your administrator", "button": "Login with another credentials" } }, @@ -577,7 +578,7 @@ "title": "Password reset", "labels": { "success": "Your password was reset", - "fail": "Sorry, we couldn't reset password for this user.", + "fail": "Sorry, we couldn't reset password for this user", "submit": "Reset", "log-in": "Sign in" } @@ -589,17 +590,17 @@ "license-activation": "License activation", "labels": { "info-running-no-license": "This instance of Virto Commerce is running on", - "info-open-source-license": "Open Source Community license.", + "info-open-source-license": "Open Source Community license", "info0": "Acquiring or renewing the license:", "info1": "Submit the ", - "info2": "We'll process your request and should contact you soon.", - "info3": "Once you receive the \"Activation Code\" and / or the License file, fill one of the activation fields below.", - "info4": "The system will display you the new license information. Review it and click \"Activate\" to confirm.", + "info2": "We'll process your request and should contact you soon", + "info3": "Once you receive the \"Activation Code\" and / or the License file, fill one of the activation fields below", + "info4": "The system will display the new license information. Review it and click \"Activate\" to confirm", "customer": "License issued to", "type": "Type", "expiration": "Expiration", "email": "Customer email", - "request-license": "License request form.", + "request-license": "License request form", "code-descr": "Enter the received license \"Activation Code\" and hit [Enter]. This is the quickest license activation method. (Requires internet connection)", "file-descr": "Optionally, provide the received License file. (Off-line activation)", "upload-progress": "Upload progress", @@ -625,7 +626,7 @@ }, "validations": { "repeat-password": "Entered passwords do not match!", - "password-too-weak": "Entered password does not comply one or more password security policies:" + "password-too-weak": "Entered password does not comply with one or more password security policies:" } }, "security-main": { @@ -674,11 +675,11 @@ "title": "User profile", "labels": { "language": "Language", - "language-description": "Display language. Clear to use browser or fallback language.", + "language-description": "Display language. Clear to use browser or fallback language", "regional-format": "Regional format", - "regional-format-description": "Regional format of numbers, currency, date and time. Clear to use browser or fallback regional format.", + "regional-format-description": "Regional format of numbers, currency, date and time. Clear to use browser or fallback regional format", "time-zone": "Time zone", - "time-zone-description": "Current user time zone in IANA (tz database) format. Select the nearest city in your time zone. Clear to use browser or fallback time zone.", + "time-zone-description": "Current user time zone in IANA (tz database) format. Select the nearest city in your time zone. Clear to use browser or fallback time zone", "use-time-ago": "Use time ago format if it is possible", "full-date-threshold-group": "Use full date format for dates earlier than...", "full-date-threshold-description": "Numeric value of time units", @@ -721,8 +722,8 @@ "licensing": { "license-absent": "Community license", "license-present": "{{type}} license, expires on {{expirationDate | amParse | date}}", - "community": "Running community edition, click to request a commercial license.", - "expired": "You license has expired on {{expirationDate | amParse | date}}, please renew.", + "community": "Running community edition, click to request a commercial license", + "expired": "Your license has expired on {{expirationDate | amParse | date}}, please renew", "purchase": "Purchase", "renew": "Renew", "expiration-date": "Expiration Date" @@ -736,7 +737,7 @@ "labels": { "module-auto-installation": "Modules auto installation", "loading": "Retrieving modules information...", - "finished": "Installation finished. Click Restart to continue.", + "finished": "Installation finished. Click Restart to continue", "start": "Start", "end": "End" } @@ -754,8 +755,8 @@ "title": "Settings" }, "accountApi": { - "title": "Api key", - "blade-subtitle": "Api key" + "title": "API key", + "blade-subtitle": "API key" }, "accountRoles": { "title": "Roles", @@ -769,7 +770,7 @@ }, "properties-save": { "title": "Save changes", - "message": "The properties have been modified. Do you want to confirm changes?" + "message": "The properties have been modified. Do you want to save changes?" }, "notification-template-save": { "title": "Save changes", @@ -777,19 +778,19 @@ }, "role-save": { "title": "Save changes", - "message": "The Role has been modified. Do you want to save changes?" + "message": "The role has been modified. Do you want to save changes?" }, "roles-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to delete selected Roles?" + "message": "Are you sure you want to delete selected roles?" }, "account-save": { "title": "Save changes", - "message": "The Account has been modified. Do you want to save changes?" + "message": "The account has been modified. Do you want to save changes?" }, "account-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to delete selected Accounts?" + "message": "Are you sure you want to delete selected accounts?" }, "oauthapps-save": { "title": "Save changes", @@ -801,23 +802,23 @@ }, "dynamic-property-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to delete this Dynamic Property?" + "message": "Are you sure you want to delete this dynamic Property?" }, "settings-value-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to delete selected Values?" + "message": "Are you sure you want to delete selected values?" }, "settings-save": { "title": "Save changes", - "message": "The settings has been modified. Do you want to confirm changes?" + "message": "The settings has been modified. Do you want to save changes?" }, "settings-delete": { "title": "Delete confirmation", "message": "The settings has been modified. Do you want to save changes?" }, "localizable-setting-value-delete": { - "title": "Confirm Delete", - "message": "Are you sure you want to delete the selected dictionary values?" + "title": "Delete confirmation", + "message": "Are you sure you want to delete selected dictionary values?" }, "localizable-setting-value-save": { "title": "Save changes", @@ -825,11 +826,11 @@ }, "email-sending-success": { "title": "Sending success", - "message": "Email was sent successfully!" + "message": "Email has been sent successfully!" }, "email-send-error": { "title": "Error in sending", - "message": "Email wasn't send! Error: {{error}}" + "message": "Email hasn't been sent! Error: {{error}}" }, "dictionary-items-delete": { "title": "Delete confirmation", @@ -850,7 +851,7 @@ }, "module-delete": { "title": "Delete confirmation", - "message": "Are you sure you want to uninstall this Module?" + "message": "Are you sure you want to uninstall this module?" }, "api-key-delete": { "title": "Delete confirmation", @@ -858,29 +859,29 @@ }, "app-restart": { "title": "Application shutdown", - "message": "To apply changes, it is need to restart the application. Depending on hosting service, the application will be restarted automatically or you should do it manually. Are you sure you want to shutdown the application now?" + "message": "Restart the application to apply changes. Depending on your hosting service, the application may restart automatically or you may need to do it manually. Are you sure you want to close the application now?" }, "error-details": { - "title": "The error details" + "title": "Error details" }, "impersonate-no-url": { "title": "Login on behalf", - "message": "Store URL was not added in the store setting. Please contact administrator." + "message": "Store URL was not added to the store setting. Please contact administrator" }, "asset-upload-error": { - "title": "Error in upload", - "message": "Need to choose a folder! Can't upload a file to the root!" + "title": "Upload error", + "message": "Choose a folder! Can't upload a file to the root!" }, "run-import": { "title": "Import confirmation", "message": "Are you sure you want to import sample data?" }, "create-folder": { - "title": "A folder name must conform to the following naming rules:\n Folder name must be from 3 through 63 characters long.\n Folder name must start with a letter or number, and can contain only letters, numbers, and the dash (-) character.\n Every dash (-) character must be immediately preceded and followed by a letter or number; consecutive dashes are not permitted.\n All letters in a folder name must be lowercase." + "title": "A folder name must conform to the following naming rules:\n Folder name must be between 3 and 63 characters long.\n Folder name must start with a letter or number, and can only contain letters, numbers, and hyphen (-).\n Each hyphen (-) must be immediately preceded and followed by a letter or number; consecutive hyphens are not permitted.\n All letters in a folder name must be lower case" }, "storefront-cache-reset-successfully": { "title": "Cache reset", - "message": "Storefront cache has been reset successfully." + "message": "Frontend Application cache has been reset successfully" } }, "commands": { @@ -889,32 +890,32 @@ } }, "permissions": { - "platform:asset:access": "Allows to see Assets in the main menu", - "platform:asset:delete": "Allows to delete platform assets", - "platform:asset:update": "Allows to change platform assets", - "platform:asset:create": "Allows to upload new platform assets", - "platform:asset:read": "Allows to download platform assets", - "platform:module:read": "Allows to view module details", - "platform:module:access": "Allows to see Modules in the main menu", - "platform:module:manage": "Allows to install/uninstall modules", - "platform:setting:read": "Allows to read platform settings", - "platform:setting:access": "Allows to see Settings in the main menu", - "platform:setting:update": "Allows to change platform settings", - "platform:dynamic_properties:read": "Allows to view dynamic property details", - "platform:dynamic_properties:create": "Allows to create new dynamic properties", - "platform:dynamic_properties:access": "Allows to see Dynamic Properties in the main menu", - "platform:dynamic_properties:update": "Allows to change dynamic properties", - "platform:dynamic_properties:delete": "Allows to delete dynamic properties", - "platform:security:read": "Allows to view user and roles details", - "platform:security:create": "Allows to create a new users and roles", - "platform:security:access": "Allows to see Security in the main menu", - "platform:security:update": "Allows to change an users and roles", - "platform:security:delete": "Allows to delete an users and roles", - "platform:security:verifyEmail": "Allows to change verified state and send verification email", - "background_jobs:manage": "Allows to access to the Hangfire console", - "platform:exportImport:access": "Allows to see Export/Import in the main menu", - "platform:import": "Allows to import platform and modules data", - "platform:export": "Allows to export platform and modules data", + "platform:asset:access": "View assets in the main menu", + "platform:asset:delete": "Delete Platform assets", + "platform:asset:update": "Change Platform assets", + "platform:asset:create": "Upload new Platform assets", + "platform:asset:read": "Download Platform assets", + "platform:module:read": "View module details", + "platform:module:access": "View modules in the main menu", + "platform:module:manage": "Install/uninstall modules", + "platform:setting:read": "Read Platform settings", + "platform:setting:access": "View settings in the main menu", + "platform:setting:update": "Change Platform settings", + "platform:dynamic_properties:read": "View dynamic property details", + "platform:dynamic_properties:create": "Create new dynamic properties", + "platform:dynamic_properties:access": "View dynamic properties in the main menu", + "platform:dynamic_properties:update": "Change dynamic properties", + "platform:dynamic_properties:delete": "Delete dynamic properties", + "platform:security:read": "View user and roles details", + "platform:security:create": "Create new users and roles", + "platform:security:access": "View security in the main menu", + "platform:security:update": "Change users and roles", + "platform:security:delete": "Delete users and roles", + "platform:security:verifyEmail": "Change verified state and send verification email", + "background_jobs:manage": "Access to the Hangfire console", + "platform:exportImport:access": "View Export/Import in the main menu", + "platform:import": "Import Platform and modules data", + "platform:export": "Export Platform and modules data", "platform:security:loginOnBehalf": "Login on behalf of a customer" }, "settings": { @@ -933,19 +934,19 @@ }, "ModulesAutoInstallState": { "title": "Modules autoinstall state", - "description": "The current state of autoinstall modules wizard" + "description": "Current state of autoinstall modules wizard" }, "SetupStep": { "title": "Current setup step", - "description": "The current step in the setup wizard" + "description": "Current step in the setup wizard" }, "SampleDataState": { "title": "Sample data state", - "description": "The current state of sample data wizard" + "description": "Current state of sample data wizard" }, "SendDiagnosticData": { "title": "Send diagnostic data", - "description": "Send VC Platform diagnostic data to VC. Can switch off only if a paid license acquired." + "description": "Send VC Platform diagnostic data to VC. Can only be disabled with purchase of a licence" }, "Platform": { "Security": { @@ -966,27 +967,27 @@ "description": "Default value for account status when creating a new account during external sign in" }, "EnablePruneExpiredTokensJob": { - "description": "Enables prune expired and invalid tokens/authorizations", + "description": "Enables the pruning of expired and invalid tokens/authorizations", "title": "Prune expired tokens" }, "CronPruneExpiredTokensJob": { - "description": "Cron expression for prune expired and invalid tokens/authorizations job", + "description": "Cron expression for the job to prune expired and invalid tokens/authorizations", "title": "Cron for the tokens prune job" }, "FileExtensionsBlackList": { - "description": "Files extensions prohibited to upload by the platform (additionally to 'FileExtensionsBlackList' in appsettings.json)", + "description": "File extensions prohibited from upload by the Platform (additionally to 'FileExtensionsBlackList' in appsettings.json)", "title": "Black list" }, "FileExtensionsWhiteList": { - "description": "Files extensions allowed to upload by the platform (additionally to 'FileExtensionsWhiteList' in appsettings.json)", + "description": "File extensions permitted for upload by the Platform (additionally to 'FileExtensionsWhiteList' in appsettings.json)", "title": "White list" } }, "UI": { "MainMenu": { "State": { - "description": "Persisted state of main menu", - "title": "Persisted state of main menu" + "description": "Persisted state of the main menu", + "title": "Persisted state of the main menu" } }, "Language": { @@ -1002,11 +1003,11 @@ "title": "Time zone" }, "UseTimeAgo": { - "description": "When set to true (by default), system will display date in format like 'a few seconds ago' when possible", - "title": "Use time ago format when is possible" + "description": "When set to true (the default), the system displays the date in 'a few seconds ago' format whenever possible", + "title": "Use time ago format when possible" }, "FullDateThreshold": { - "description": "Number of units after time ago format will be switched to full date format", + "description": "The time-ago format will switch to a full date format after a certain number of time units", "title": "Full date threshold" }, "FullDateThresholdUnit": { @@ -1024,12 +1025,12 @@ }, "Cache": { "Enabled": { - "description": "Using this setting, you can turn on and off cache globally for the entire platform application", + "description": "This setting allows you to globally enable and disable caching for the entire Platform application", "title": "Enable or disable cache globally" }, "AbsoulteExpiration": { - "description": "Specifies the maximum time that the cached data to be stored in the cache. Format: [-][d.]hh:mm:ss[.fffffff]", - "title": "The global lifetime of objects in the cache" + "description": "Specifies the maximum time the cached data is stored in the cache. Format: [-][d.]hh:mm:ss[.fffffff]", + "title": "Global lifetime of objects in cache" } } }, diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Common.json new file mode 100644 index 00000000000..8364db962d9 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "Añadir", + "activate": "Activar", + "assign": "Asignar", + "cancel": "Cancelar", + "clear": "Limpiar", + "clear-all": "Limpiar todo", + "clone": "Clonar", + "close": "Cerrar", + "confirm": "Confirmar", + "copy-link": "Copiar enlace", + "copy": "Copiar", + "create": "Crear", + "cut": "Cortar", + "delete": "Eliminar", + "add-all": "Añadir todo", + "remove-all": "Eliminar todo", + "download": "Descargar", + "edit": "Editar", + "export": "Exportar", + "generate": "Generar", + "import": "Importar", + "import-sample-data": "Importar datos de muestra", + "install": "Instalar", + "manage": "Gestionar", + "more": "Más", + "no": "No", + "new-folder": "Nueva carpeta", + "new-license": "Renovar licencia", + "ok": "Aceptar", + "paste": "Pegar", + "pick-selected": "Seleccionar elegidos", + "preview": "Vista previa", + "open-browser": "Abrir en el navegador", + "redo": "Rehacer", + "refresh": "Actualizar", + "remove": "Eliminar", + "reset": "Restablecer", + "restart": "Reiniciar", + "save": "Guardar", + "send": "Enviar", + "select-all": "Seleccionar todo", + "set-to-default": "Establecer por defecto", + "start-export": "Iniciar exportación", + "settings": "Configuración", + "sign-out": "Cerrar sesión", + "undo": "Deshacer", + "uninstall": "Desinstalar", + "unselect-all": "Deseleccionar todo", + "update": "Actualizar", + "upload": "Subir", + "yes": "Sí", + "add-new-property": "Añadir nueva propiedad", + "manage-type-properties": "Tipos de propiedades", + "manage-profile": "Gestionar perfil", + "minimize": "Minimizar", + "maximize": "Maximizar", + "stop-sending": "Detener envío", + "set-active": "Establecer como activo", + "reject-user": "Rechazar usuario", + "change-password": "Cambiar contraseña", + "unlock-account": "Desbloquear cuenta", + "lock-account": "Bloquear cuenta", + "today": "Hoy", + "time": "Hora", + "now": "Ahora", + "date": "Fecha", + "see-details": "Ver detalles", + "dismiss": "Descartar", + "hide-empty-property-values": "Ocultar valores vacíos", + "show-empty-property-values": "Mostrar valores vacíos", + "titles": { + "refresh": "Actualizar", + "new-folder": "Nueva carpeta", + "upload": "Subir" + } + }, + "list": { + "no-data": "Sin datos", + "count": "Cantidad", + "loading": "Cargando...", + "item-not-found": "Error: No encontrado" + }, + "placeholders": { + "n-a": "N/A", + "no-file": "Elegir archivo", + "search-keyword": "Buscar palabra clave...", + "select-value": "Seleccionar valor", + "select-values": "Seleccionar valores" + }, + "dialogs": { + "delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar las entradas seleccionadas?" + } + }, + "properties": { + "short-text": { + "title": "Texto corto", + "description": "Valores de texto de menos de 1024 caracteres" + }, + "long-text": { + "title": "Texto largo", + "description": "Texto ilimitado sin restricción de tamaño" + }, + "integer": { + "title": "Entero", + "description": "Número entero" + }, + "decimal": { + "title": "Número decimal", + "description": "Número decimal con una precisión de 18 y una escala de 4" + }, + "date-time": { + "title": "Fecha y hora", + "description": "Seleccionar fecha" + }, + "boolean": { + "title": "Booleano", + "description": "Tipo interruptor" + }, + "html": { + "title": "HTML", + "description": "Marcado HTML" + }, + "undefined": { + "title": "Indefinido" + }, + "image": { + "title": "Imagen", + "description": "Tipo de imagen" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "Introducir texto corto", + "secure-string": "Introducir texto secreto", + "email": "Introducir correo electrónico", + "url": "Introducir URL", + "long-text": "Introducir texto largo", + "integer": "Introducir número entero", + "number": "Introducir número decimal", + "date-time": "Elegir fecha", + "short-text-multivalue": "Añadir valor", + "integer-multivalue": "Añadir entero", + "number-multivalue": "Añadir decimal", + "short-text-dictionary": "Seleccionar valor", + "short-text-dictionary-multivalue": "Seleccionar valor", + "short-text-multilang": "Introducir valor", + "long-text-multilang": "Introducir valor", + "short-text-multivalue-multilang": "Añadir valor", + "short-text-dictionary-multilang": "Seleccionar valor", + "short-text-dictionary-multivalue-multilang": "Seleccionar valor", + "long-text-dictionary-multivalue-multilang": "Seleccionar valor" + } + }, + "short-text-input": { + "placeholder": "Introducir valor", + "required": "Este campo es obligatorio", + "maxLength": "Este campo no debe contener más de {{number}} caracteres" + }, + "validators": { + "uriWithoutQuery": { + "error": "Formato de URI no válido. Asegúrese de que la URI no tenga parámetros de consulta" + } + }, + "errors": { + "generic-error": "Error", + "400": "Solicitud incorrecta", + "401": "No autorizado", + "403": "Prohibido", + "404": "No encontrado", + "405": "Método no permitido", + "406": "No aceptable", + "407": "Autenticación de proxy requerida", + "408": "Tiempo de espera de la solicitud", + "409": "Conflicto", + "429": "Demasiadas solicitudes", + "500": "Error interno del servidor", + "501": "No implementado", + "502": "Puerta de enlace incorrecta", + "503": "Servicio no disponible", + "504": "Tiempo de espera de la puerta de enlace" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..294b2d54575 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "Afganistán", + "EGY": "Egipto", + "ALA": "Åland", + "ALB": "Albania", + "DZA": "Argelia", + "ASM": "Samoa Americana", + "VIR": "Islas Vírgenes de los Estados Unidos", + "AND": "Andorra", + "AGO": "Angola", + "AIA": "Anguila", + "ATA": "Antártida (estatus especial por el Tratado Antártico)", + "ATG": "Antigua y Barbuda", + "GNQ": "Guinea Ecuatorial", + "ARG": "Argentina", + "ARM": "Armenia", + "ABW": "Aruba", + "AZE": "Azerbaiyán", + "ETH": "Etiopía", + "AUS": "Australia", + "BHS": "Bahamas", + "BHR": "Baréin", + "BGD": "Bangladesh", + "BRB": "Barbados", + "BLR": "Bielorrusia", + "BEL": "Bélgica", + "BLZ": "Belice", + "BEN": "Benín", + "BMU": "Bermudas", + "BTN": "Bután", + "BOL": "Bolivia", + "BES": "Bonaire, San Eustaquio y Saba", + "BIH": "Bosnia y Herzegovina", + "BWA": "Botsuana", + "BVT": "Isla Bouvet", + "BRA": "Brasil", + "VGB": "Islas Vírgenes Británicas", + "IOT": "Territorio Británico del Océano Índico", + "BRN": "Brunéi", + "BGR": "Bulgaria", + "BFA": "Burkina Faso", + "BDI": "Burundi", + "CHL": "Chile", + "CHN": "República Popular China", + "COK": "Islas Cook", + "CRI": "Costa Rica", + "CUW": "Curazao", + "DNK": "Dinamarca", + "DEU": "Alemania", + "DMA": "Dominica", + "DOM": "República Dominicana", + "DJI": "Yibuti", + "ECU": "Ecuador", + "CIV": "Costa de Marfil", + "SLV": "El Salvador", + "ERI": "Eritrea", + "EST": "Estonia", + "SWZ": "Esuatini", + "FLK": "Islas Malvinas", + "FRO": "Islas Feroe", + "FJI": "Fiyi", + "FIN": "Finlandia", + "FRA": "Francia", + "GUF": "Guayana Francesa", + "PYF": "Polinesia Francesa", + "ATF": "Tierras Australes y Antárticas Francesas", + "GAB": "Gabón", + "GMB": "Gambia", + "GEO": "Georgia", + "GHA": "Ghana", + "GIB": "Gibraltar", + "GRD": "Granada", + "GRC": "Grecia", + "GRL": "Groenlandia", + "GLP": "Guadalupe", + "GUM": "Guam", + "GTM": "Guatemala", + "GGY": "Guernsey", + "GIN": "Guinea", + "GNB": "Guinea-Bisáu", + "GUY": "Guyana", + "HTI": "Haití", + "HMD": "Islas Heard y McDonald", + "HND": "Honduras", + "HKG": "Hong Kong", + "IND": "India", + "IDN": "Indonesia", + "IMN": "Isla de Man", + "IRQ": "Irak", + "IRN": "Irán", + "IRL": "Irlanda", + "ISL": "Islandia", + "ISR": "Israel", + "ITA": "Italia", + "JAM": "Jamaica", + "JPN": "Japón", + "YEM": "Yemen", + "JEY": "Jersey", + "JOR": "Jordania", + "CYM": "Islas Caimán", + "KHM": "Camboya", + "CMR": "Camerún", + "CAN": "Canadá", + "CPV": "Cabo Verde", + "KAZ": "Kazajistán", + "QAT": "Catar", + "KEN": "Kenia", + "KGZ": "Kirguistán", + "KIR": "Kiribati", + "CCK": "Islas Cocos", + "COL": "Colombia", + "COM": "Comoras", + "COD": "República Democrática del Congo", + "COG": "República del Congo", + "PRK": "Corea del Norte", + "KOR": "Corea del Sur", + "HRV": "Croacia", + "CUB": "Cuba", + "KWT": "Kuwait", + "LAO": "Laos", + "LSO": "Lesoto", + "LVA": "Letonia", + "LBN": "Líbano", + "LBR": "Liberia", + "LBY": "Libia", + "LIE": "Liechtenstein", + "LTU": "Lituania", + "LUX": "Luxemburgo", + "MAC": "Macao", + "MDG": "Madagascar", + "MWI": "Malaui", + "MYS": "Malasia", + "MDV": "Maldivas", + "MLI": "Malí", + "MLT": "Malta", + "MAR": "Marruecos", + "MHL": "Islas Marshall", + "MTQ": "Martinica", + "MRT": "Mauritania", + "MUS": "Mauricio", + "MYT": "Mayotte", + "MEX": "México", + "FSM": "Micronesia", + "MDA": "Moldavia", + "MCO": "Mónaco", + "MNG": "Mongolia", + "MNE": "Montenegro", + "MSR": "Montserrat", + "MOZ": "Mozambique", + "MMR": "Myanmar", + "NAM": "Namibia", + "NRU": "Nauru", + "NPL": "Nepal", + "NCL": "Nueva Caledonia", + "NZL": "Nueva Zelanda", + "NIC": "Nicaragua", + "NLD": "Países Bajos", + "NER": "Níger", + "NGA": "Nigeria", + "NIU": "Niue", + "MNP": "Islas Marianas del Norte", + "MKD": "Macedonia del Norte", + "NFK": "Isla Norfolk", + "NOR": "Noruega", + "OMN": "Omán", + "AUT": "Austria", + "TLS": "Timor Oriental", + "PAK": "Pakistán", + "PSE": "Palestina", + "PLW": "Palaos", + "PAN": "Panamá", + "PNG": "Papúa Nueva Guinea", + "PRY": "Paraguay", + "PER": "Perú", + "PHL": "Filipinas", + "PCN": "Islas Pitcairn", + "POL": "Polonia", + "PRT": "Portugal", + "PRI": "Puerto Rico", + "REU": "Reunión", + "RWA": "Ruanda", + "ROU": "Rumania", + "RUS": "Rusia", + "SLB": "Islas Salomón", + "BLM": "San Bartolomé", + "MAF": "San Martín (parte francesa)", + "ZMB": "Zambia", + "WSM": "Samoa", + "SMR": "San Marino", + "STP": "Santo Tomé y Príncipe", + "SAU": "Arabia Saudita", + "SWE": "Suecia", + "CHE": "Suiza", + "SEN": "Senegal", + "SRB": "Serbia", + "SYC": "Seychelles", + "SLE": "Sierra Leona", + "ZWE": "Zimbabue", + "SGP": "Singapur", + "SXM": "San Martín (parte neerlandesa)", + "SVK": "Eslovaquia", + "SVN": "Eslovenia", + "SOM": "Somalia", + "ESP": "España", + "LKA": "Sri Lanka", + "SHN": "Santa Elena, Ascensión y Tristán de Acuña", + "KNA": "San Cristóbal y Nieves", + "LCA": "Santa Lucía", + "SPM": "San Pedro y Miquelón", + "VCT": "San Vicente y las Granadinas", + "ZAF": "Sudáfrica", + "SDN": "Sudán", + "SGS": "Islas Georgias del Sur y Sandwich del Sur", + "SSD": "Sudán del Sur", + "SUR": "Surinam", + "SJM": "Svalbard y Jan Mayen", + "SYR": "Siria", + "TJK": "Tayikistán", + "TWN": "Taiwán", + "TZA": "Tanzania", + "THA": "Tailandia", + "TGO": "Togo", + "TKL": "Tokelau", + "TON": "Tonga", + "TTO": "Trinidad y Tobago", + "TCD": "Chad", + "CZE": "República Checa", + "TUN": "Túnez", + "TUR": "Turquía", + "TKM": "Turkmenistán", + "TCA": "Islas Turcas y Caicos", + "TUV": "Tuvalu", + "UGA": "Uganda", + "UKR": "Ucrania", + "HUN": "Hungría", + "UMI": "Islas Ultramarinas Menores de Estados Unidos", + "URY": "Uruguay", + "UZB": "Uzbekistán", + "VUT": "Vanuatu", + "VAT": "Ciudad del Vaticano", + "VEN": "Venezuela", + "ARE": "Emiratos Árabes Unidos", + "USA": "Estados Unidos", + "GBR": "Reino Unido", + "VNM": "Vietnam", + "WLF": "Wallis y Futuna", + "CXR": "Isla de Navidad", + "ESH": "Sahara Occidental", + "CAF": "República Centroafricana", + "CYP": "Chipre" + }, + "CAN": { + "AB": "Alberta", + "BC": "Columbia Británica", + "MB": "Manitoba", + "NB": "Nuevo Brunswick", + "NL": "Terranova y Labrador", + "NT": "Territorios del Noroeste", + "NS": "Nueva Escocia", + "NU": "Nunavut", + "ON": "Ontario", + "PE": "Isla del Príncipe Eduardo", + "QC": "Quebec", + "SK": "Saskatchewan", + "YT": "Yukón" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..38c64684891 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/es.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "Inicio", + "browse": "Explorar", + "configuration": "Configuración", + "notifications": "Notificaciones", + "more": "Más", + "settings": "Ajustes", + "dynamic-properties": "Propiedades dinámicas", + "security": "Seguridad", + "modules": "Módulos", + "export-import": "Exportar e Importar", + "user-profile": "Perfil de usuario", + "assets": "Recursos", + "toggle-favorites": "Shift + Espacio para alternar favoritos", + "help": "Ayuda" + }, + "navigation": { + "back": "Atrás" + }, + "blades": { + "system-info": { + "title": "Información de la plataforma", + "labels": { + "clr-version": "Versión CLR", + "environment-name": "Modo de entorno", + "is-64-bit-os": "Sistema operativo de 64 bits", + "is-64-bit-process": "Proceso de 64 bits", + "database-provider": "Proveedor de base de datos" + } + }, + "asset-list": { + "title": "Gestión de recursos", + "bread-crumb-top": "Todos los recursos", + "labels": { + "picture": "Imagen", + "name": "Nombre", + "size": "Tamaño", + "modified": "Modificado", + "actions": "Acciones", + "group": "Grupo", + "language": "Idioma" + } + }, + "asset-upload": { + "title": "Subida de recursos", + "labels": { + "select-files": "Seleccionar archivos", + "drag-note": "Arrastrar y soltar archivos aquí", + "progress": "Progreso", + "asset-uploaded": "Recursos subidos" + }, + "placeholders": { + "image-url": "Pegar URL del archivo aquí" + } + }, + "operation-list": { + "labels": { + "login": "Iniciar sesión", + "details": "Detalles", + "time": "Tiempo" + } + }, + "dynamicObject-list": { + "title": "Tipos de objetos dinámicos", + "subtitle": "Seleccionar tipo de objeto para gestionar propiedades dinámicas", + "labels": { + "no-objects": "Aún no hay objetos que soporten propiedades dinámicas" + } + }, + "dynamicProperty-detail": { + "title": "Gestionar propiedad", + "subtitle": "Gestionar propiedad", + "subtitle-new": "Nueva propiedad", + "labels": { + "property-name": "Nombre de la propiedad", + "required": "Obligatorio", + "multivalue": "Multivalor", + "multilingual": "Multilingüe", + "dictionary": "Diccionario", + "description": "Descripción", + "display-order": "Orden de visualización", + "display-name": "Nombre para mostrar", + "value-type": "Tipo de valor", + "dictionary-values": "Valores del diccionario", + "manage-dictionary": "Gestionar diccionario" + }, + "placeholders": { + "description": "Introducir descripción de la propiedad", + "display-name": "Introducir nombre para mostrar...", + "display-order": "Orden de visualización" + }, + "validations": { + "multivalue": "La propiedad multivalor solo puede tener tipos de valor Texto corto, Entero o Decimal", + "multilingual": "Solo el texto o HTML pueden ser multilingües", + "dictionary": "Solo se admiten diccionarios del tipo de valor Texto corto" + } + }, + "dynamicProperty-list": { + "subtitle": "Gestionar propiedades dinámicas", + "labels": { + "no-properties": "Aún no hay propiedades dinámicas" + } + }, + "notifications-menu": { + "subtitle": "Trabajando con el sistema de notificaciones" + }, + "property-dictionary": { + "title": "Valores del diccionario", + "subtitle": "Gestionar valores del diccionario", + "labels": { + "edit-value": "Editar valor", + "new-value": "Nuevo valor", + "dictionary-name": "Nombre de entrada del diccionario", + "localized-values": "Valores localizados", + "current-values": "Valores actuales", + "name": "Nombre", + "values": "Valores" + }, + "validations": { + "dictionary-name-required": "Obligatorio", + "dictionary-name": "Se encontró un nombre duplicado", + "localized-values-required": "Obligatorio", + "localized-values": "Se encontró un nombre duplicado", + "dictionary": "Solo se admiten diccionarios del tipo de valor Texto corto" + }, + "placeholders": { + "dictionary-name": "Introducir nombre", + "localized-values": "Introducir valor" + } + }, + "propertyValue-list": { + "title": "Propiedades dinámicas", + "subtitle": "", + "labels": { + "header": "Valores de propiedades", + "no-properties": "Esta entidad aún no tiene propiedades dinámicas. Haga clic en 'Tipos de propiedades' y cree algunas propiedades. Cierre y vuelva a abrir la vista de la entidad actual para cargar las propiedades dinámicas" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Obligatorio" + }, + "labels": { + "new-value": "Nuevo valor", + "current-values": "Valores actuales", + "values": "Valores" + }, + "placeholders": { + "value": "Introducir valor" + } + }, + "export-main": { + "title": "Exportación de datos", + "labels": { + "platform-entries": "Entradas de la plataforma", + "choose-modules": "Elegir módulos para exportar", + "download-url": "URL de descarga", + "errors": "Errores", + "start": "Inicio", + "end": "Fin" + }, + "menu": { + "security": { + "title": "Seguridad", + "description": "Cuentas y roles" + }, + "binary": { + "title": "Binario", + "description": "Datos binarios" + }, + "settings": { + "title": "Ajustes", + "description": "Ajustes de la plataforma" + }, + "dynamic-props": { + "title": "Propiedades dinámicas", + "description": "Propiedades dinámicas de la plataforma" + } + } + }, + "import-main": { + "title": "Importación de datos", + "labels": { + "start-import": "Iniciar importación", + "select-file": "Seleccionar archivo .zip para importar. El archivo debe ser producido por la exportación de datos del Commerce Manager", + "drag-note": "Arrastrar y soltar archivo .zip para importar. El archivo debe ser producido por la exportación de datos del Commerce Manager", + "upload-failed": "Fallo en la subida", + "upload-progress": "Progreso de subida", + "import-progress": "Progreso de importación", + "import-finished": "Importación finalizada", + "import-data-information": "Información de datos de importación", + "author": "Autor", + "data-file-created": "Archivo de datos creado", + "created-platform-version": "Creado en la versión de la Plataforma", + "platform-entries": "Entradas de la plataforma", + "choose-modules": "Elegir módulos para importar", + "no-data": "Sin datos", + "errors": "Errores", + "start": "Inicio", + "end": "Fin" + }, + "menu": { + "security": { + "title": "Seguridad", + "description": "Cuentas y roles" + }, + "binary": { + "title": "Binario", + "description": "Datos binarios" + }, + "settings": { + "title": "Ajustes", + "description": "Ajustes de la plataforma" + }, + "dynamic-props": { + "title": "Propiedades dinámicas", + "description": "Propiedades dinámicas de la plataforma" + } + } + }, + "exportImport-main": { + "title": "Exportación e importación de datos", + "menu": { + "export": { + "title": "Exportar", + "description": "Los datos se guardarán en un archivo para poder importarlos más tarde" + }, + "import": { + "title": "Importar", + "description": "Importar datos desde un archivo exportado" + } + } + }, + "resolve-result": { + "title": "Vista previa del resultado", + "labels": { + "subject": "Asunto", + "body": "Cuerpo" + } + }, + "module-settings-detail": { + "title": "Ajustes del módulo" + }, + "module-wizard-progress-step": { + "title-install": "Instalación del módulo", + "title-update": "Actualización del módulo", + "title-uninstall": "Desinstalación del módulo", + "labels": { + "start": "Inicio", + "end": "Fin", + "progress-messages": "Mensajes de progreso", + "process-completed": "Proceso de instalación del módulo completado", + "restart-application": "Reiniciar la aplicación ahora o más tarde" + } + }, + "module-detail": { + "title": "Información del módulo", + "labels": { + "i-accept-the": "Acepto la", + "license-link": "licencia", + "license": "Licencia", + "agreement": "acuerdo", + "install-from-file": "Instalar / actualizar módulo desde archivo", + "select-module-file": "Subir un archivo de módulo (.zip) desde una fuente externa fuera del repositorio central de módulos", + "upload-progress": "Progreso de subida", + "module-info": "Información del módulo", + "title": "Título", + "official": "Módulo oficial de {{$owner}}", + "owners": "Desarrollado por {{$owner}}", + "author": "Autor", + "authors": "Autores", + "id": "ID", + "version": "Versión", + "project-information": "Información del proyecto", + "description": "Descripción", + "platform-version": "Versión de la plataforma", + "dependencies": "Dependencias", + "optional-dependencies": "Dependencias opcionales", + "tags": "Etiquetas", + "install-version": "Instalar versión", + "errors": "Errores" + } + }, + "modules-main": { + "title": "Módulos", + "labels": { + "updates": "Actualizaciones", + "available": "Disponibles", + "installed": "Instalados", + "withErrors": "Errores", + "advanced": "Avanzado" + } + }, + "modules-list": { + "subtitle": "Gestión de módulos", + "labels": { + "grouping": "Mostrar paquetes de módulos", + "ungrouped": "Otros", + "no-updates": "No se encontraron actualizaciones", + "no-modules-part1": "No hay nuevos módulos para instalar", + "no-installed-modules": "No se encontraron módulos instalados", + "icon": "Icono", + "up-to-date": "El módulo está actualizado", + "update-available": "Actualización disponible para este módulo", + "module": "Módulo", + "version": "Versión", + "author": "Autor", + "installed": "Módulos instalados", + "manual-install-warning": "¡Advertencia! Los módulos instalados manualmente no se iniciarán porque RefreshProbingFolderOnStart está configurado como falso" + } + }, + "history": { + "title": "Eventos del sistema", + "subtitle": "Historial de eventos", + "labels": { + "type": "Tipo", + "title": "Título", + "created": "Creado", + "description": "Descripción" + } + }, + "historyDetailDefault": { + "title": "Detalle del evento", + "subtitle": "Detalle del evento", + "labels": { + "start": "Inicio", + "end": "Fin", + "elapsed": "Transcurrido", + "errors": "Errores", + "stats": "Procesados {{ processedCount }} de {{ totalCount }} registros" + } + }, + "menuHeader": { + "labels": { + "history": "Historial", + "clear-recent": "Borrar todo lo reciente" + } + }, + "account-changePassword": { + "labels": { + "title": "Por favor, introduce una nueva contraseña", + "login": "Iniciar sesión", + "force-change-info": "Tu contraseña ha caducado. Debes cambiar la contraseña para continuar usando el gestor", + "current-password": "Contraseña actual", + "new-password": "Nueva contraseña", + "repeat-password": "Repetir nueva contraseña", + "cancel": "Cancelar", + "save": "Cambiar", + "fail": "Lo sentimos, no pudimos restablecer la contraseña para este usuario" + }, + "validations": { + "current-password": "Requerido", + "new-password": "¡La contraseña antigua y la nueva son iguales!", + "repeat-password": "¡Las nuevas contraseñas no coinciden!" + }, + "placeholders": { + "current-password": "Introduce la contraseña actual", + "new-password": "Introduce la nueva contraseña", + "repeat-password": "Repite la nueva contraseña" + } + }, + "account-resetPassword": { + "subtitle": "Cambiar contraseña de usuario", + "labels": { + "new-password": "Nueva contraseña", + "repeat-password": "Repetir contraseña", + "force-password-change": "Hacer que este usuario cambie su contraseña la próxima vez que inicie sesión" + }, + "validations": { + "repeat-password": "¡Las nuevas contraseñas no coinciden!", + "invalid-token": "El token de restablecimiento de contraseña no es válido o ha caducado", + "password-too-weak": "La nueva contraseña no cumple con una o más políticas de seguridad de contraseñas:", + "passwordTooShort": "Las contraseñas deben tener {{parameter}} o más caracteres", + "passwordRequiresUniqueChars": "Las contraseñas deben usar al menos {{parameter}} caracteres diferentes", + "passwordRequiresLower": "Las contraseñas deben tener al menos una minúscula ('a'-'z')", + "passwordRequiresUpper": "Las contraseñas deben tener al menos una mayúscula ('A'-'Z')", + "passwordRequiresDigit": "Las contraseñas deben tener al menos un dígito ('0'-'9')", + "passwordRequiresNonAlphanumeric": "Las contraseñas deben tener al menos un carácter no alfanumérico", + "recentPasswordUsed": "Has usado esta contraseña en el pasado. Elige otra" + }, + "placeholders": { + "new-password": "Introduce la nueva contraseña", + "repeat-password": "Repite la nueva contraseña" + } + }, + "account-detail": { + "title-new": "Nueva cuenta", + "labels": { + "user-information": "Información del usuario", + "is-administrator": "Es administrador", + "account-type": "Tipo de cuenta", + "login": "Nombre de usuario", + "account-state": "Estado de la cuenta", + "account-email": "Correo electrónico", + "locked-state": "Estado de bloqueo", + "status": "Estado", + "verified": "Verificado", + "resend-link": "Reenviar enlace", + "link-sent": "El enlace fue enviado", + "last-login-date": "Fecha del último inicio de sesión" + }, + "placeholders": { + "account-type": "Seleccionar ...", + "email": "Introduce el correo electrónico", + "user-name": "Introduce el nombre de usuario", + "status": "Seleccionar ..." + } + }, + "account-list": { + "title": "Usuarios", + "subtitle": "Servicio de seguridad", + "labels": { + "name": "Nombre", + "account-type": "Tipo de cuenta", + "login": "Nombre de usuario", + "state": "Estado", + "status": "Status" + } + }, + "account-api": { + "labels": { + "api-key": "Clave API", + "is-active": "está activa" + }, + "placeholders": { + "api-key": "Introduce la clave API" + } + }, + "role-detail": { + "subtitle": "Detalles del rol", + "labels": { + "summary": "Resumen", + "name": "Nombre", + "description": "Descripción", + "assigned-permissions": "Permisos asignados", + "permission-name": "Nombre", + "assigned-scopes": "Ámbitos asignados", + "no-permissions-assigned": "No hay permisos asignados" + }, + "placeholders": { + "name": "Introduce el nombre", + "description": "Introduce la descripción" + } + }, + "account-roles": { + "subtitle": "Asignar roles", + "labels": { + "select-roles": "Selecciona roles para asignar", + "no-roles": "No hay roles para asignar" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "Roles asignados", + "no-assigned": "No hay roles asignados" + } + }, + "permission-scopes": { + "subtitle": "Configurar ámbitos de permisos", + "labels": { + "select-bounded-scopes": "Seleccionar ámbitos limitados", + "selected": "Seleccionado", + "scope-name": "Nombre del ámbito y parámetros", + "no-scopes": "No hay ámbitos" + } + }, + "role-permissions": { + "subtitle": "Asignar permisos", + "labels": { + "select-permissions": "Selecciona permisos para asignar" + } + }, + "new-role-wizard": { + "title": "Nuevo rol", + "labels": { + "summary": "Resumen", + "name": "Nombre", + "description": "Descripción", + "assign-permissions": "Asignar permisos" + }, + "placeholders": { + "name": "Introduce el nombre", + "description": "Introduce la descripción" + } + }, + "role-list": { + "title": "Roles", + "subtitle": "Servicio de seguridad", + "labels": { + "name": "Nombre" + } + }, + "oauthapps": { + "labels": { + "clientId": "ID de cliente", + "displayName": "Nombre para mostrar", + "type": "Tipo", + "clientSecret": "Secreto del cliente", + "assigned-permissions": "Permisos asignados", + "redirectUris": "URIs de redirección", + "postLogoutRedirectUris": "URIs de redirección post-cierre de sesión" + }, + "placeholders": { + "clientId": "Introduce el ID de cliente", + "displayName": "Introduce el nombre para mostrar", + "type": "Introduce el tipo", + "clientSecret": "Introduce el secreto del cliente" + } + }, + "oauthapps-list": { + "title": "Aplicaciones OAuth", + "subtitle": "Servicio de seguridad" + }, + "oauthapps-detail": { + "title": "Editar aplicación OAuth", + "title-new": "Crear aplicación OAuth", + "subtitle": "Servicio de seguridad", + "labels": { + "clientSecret-warning": "¡Advertencia! Debes copiar el secreto ahora. Se ocultará después de cerrar el panel", + "urls": "URLs" + }, + "blades": { + "edit-redirectUris": { + "title": "URIs de redirección", + "subtitle": "Gestionar URIs de redirección" + }, + "edit-postLogoutRedirectUris": { + "title": "URIs de redirección post-cierre de sesión", + "subtitle": "Gestionar URIs de redirección post-cierre de sesión" + } + } + }, + "login": { + "labels": { + "sign-in": "Iniciar sesión en el Gestor de {{title}}", + "login": "Usuario", + "password": "Contraseña", + "remember-me": "Recordarme", + "external-sign-in": "Iniciar sesión con {{displayName}}", + "forgot-password": "¿Olvidaste tu contraseña?", + "log-in": "Iniciar sesión", + "log-in-placeholder": "Introduce tu correo electrónico o nombre de usuario", + "password-placeholder": "Introduce tu contraseña", + "azure-log-in-label": "Iniciar sesión en el sitio de administración a través de Azure", + "password-log-in-type": "Usuario del sistema", + "or": "o", + "signing-in": "Iniciando sesión..." + } + }, + "forgotpassword": { + "title": "¿Olvidaste tu contraseña?", + "labels": { + "login": "Usuario o correo electrónico", + "description": "Te enviaremos un correo electrónico con instrucciones para restablecer tu contraseña", + "success": "Se te ha enviado un correo electrónico con instrucciones", + "fail": "Lo sentimos, no pudimos restablecer la contraseña para este usuario", + "back": "Volver", + "submit": "Enviar", + "time-limit": "Puedes intentarlo de nuevo en {{countdown}}", + "time-limit-end": "Puedes intentarlo de nuevo ahora" + }, + "placeholders": { + "login-or-email": "Introduce usuario o correo electrónico" + } + }, + "access-denied": { + "title": "Acceso denegado", + "labels": { + "message": "No tienes acceso a este recurso. Por favor, contacta con tu administrador", + "button": "Iniciar sesión con otras credenciales" + } + }, + "resetpassword": { + "title": "Restablecimiento de contraseña", + "labels": { + "success": "Tu contraseña ha sido restablecida", + "fail": "Lo sentimos, no pudimos restablecer la contraseña para este usuario", + "submit": "Restablecer", + "log-in": "Iniciar sesión" + } + }, + "license": { + "title": "Licencia actual", + "title-new": "Activación de nueva licencia", + "license-info": "Información de licencia", + "license-activation": "Activación de licencia", + "labels": { + "info-running-no-license": "Esta instancia de Virto Commerce está funcionando con", + "info-open-source-license": "licencia Comunitaria de Código Abierto", + "info0": "Adquirir o renovar la licencia:", + "info1": "Envía el ", + "info2": "Procesaremos tu solicitud y nos pondremos en contacto contigo pronto", + "info3": "Una vez que recibas el \"Código de Activación\" y/o el archivo de Licencia, completa uno de los campos de activación a continuación", + "info4": "El sistema mostrará la nueva información de licencia. Revísala y haz clic en \"Activar\" para confirmar", + "customer": "Licencia emitida para", + "type": "Tipo", + "expiration": "Vencimiento", + "email": "Correo electrónico del cliente", + "request-license": "Formulario de solicitud de licencia", + "code-descr": "Introduce el \"Código de Activación\" de licencia recibido y presiona [Enter]. Este es el método de activación de licencia más rápido. (Requiere conexión a internet)", + "file-descr": "Opcionalmente, proporciona el archivo de Licencia recibido. (Activación sin conexión)", + "upload-progress": "Progreso de carga", + "errors": "Error de activación" + }, + "placeholders": { + "code": "Introduce el código de activación" + } + }, + "new-account-wizard": { + "labels": { + "login": "Usuario", + "email": "Correo electrónico", + "password": "Contraseña", + "repeat-password": "Repetir contraseña", + "assign-roles": "Asignar roles" + }, + "placeholders": { + "email": "Introduce el correo electrónico", + "login": "Introduce el usuario", + "password": "Introduce la nueva contraseña", + "repeat-password": "Repite la nueva contraseña" + }, + "validations": { + "repeat-password": "Las contraseñas introducidas no coinciden", + "password-too-weak": "La contraseña introducida no cumple con una o más políticas de seguridad de contraseñas:" + } + }, + "security-main": { + "title": "Seguridad", + "subtitle": "Gestión de usuarios" + }, + "entitySetting-list": { + "title": "Configuraciones" + }, + "setting-dictionary": { + "subtitle": "Gestionar valores del diccionario", + "labels": { + "new-value": "Por favor, introduce un valor", + "current-values": "Valores actuales", + "value": "Valor" + }, + "validations": { + "new-value-required": "Obligatorio", + "new-value": "Se ha encontrado un valor duplicado" + }, + "placeholders": { + "new-value": "Por favor, introduce un valor" + } + }, + "settings-detail": { + "title": "Valores de configuración", + "hide-description": "Ocultar" + }, + "settingGroup-list": { + "title": "Configuraciones", + "bread-crumb-top": "Todas las configuraciones" + }, + "settings-uploader": { + "drag-drop-comment": "Arrastra y suelta el archivo aquí", + "or": "o", + "browse-your-files": "explora tus archivos" + }, + "localizable-setting-value-list": { + "subtitle": "Gestionar valores del diccionario" + }, + "localizable-setting-value-details": { + "title": "Editar valor del diccionario", + "alias": "Valor del sistema" + }, + "user-profile": { + "title": "Perfil de usuario", + "labels": { + "language": "Idioma", + "language-description": "Idioma de visualización. Deja en blanco para usar el idioma del navegador o el idioma predeterminado", + "regional-format": "Formato regional", + "regional-format-description": "Formato regional de números, moneda, fecha y hora. Deja en blanco para usar el formato regional del navegador o el predeterminado", + "time-zone": "Zona horaria", + "time-zone-description": "Zona horaria actual del usuario en formato IANA (base de datos tz). Selecciona la ciudad más cercana en tu zona horaria. Deja en blanco para usar la zona horaria del navegador o la predeterminada", + "use-time-ago": "Usar formato de tiempo relativo si es posible", + "full-date-threshold-group": "Usar formato de fecha completa para fechas anteriores a...", + "full-date-threshold-description": "Valor numérico de unidades de tiempo", + "full-date-threshold-unit-description": "Unidad de tiempo (por ejemplo, horas o años)" + }, + "placeholders": { + "full-date-threshold": "Introduce el valor umbral", + "full-date-threshold-unit": "Selecciona la unidad umbral" + }, + "full-date-threshold-units": { + "Never": "Nunca", + "Seconds": "Segundos", + "Minutes": "Minutos", + "Hours": "Horas", + "Days": "Días", + "Weeks": "Semanas", + "Months": "Meses", + "Quarters": "Trimestres", + "Years": "Años" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "Elige el tipo de datos de muestra", + "size": "tamaño", + "version": "versión" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "Inicialización de datos de muestra", + "starting-initialization": "Iniciando la inicialización de datos de muestra...", + "errors": "Errores", + "start": "Inicio", + "end": "Fin" + } + }, + "licensing": { + "license-absent": "Licencia comunitaria", + "license-present": "Licencia {{type}}, vence el {{expirationDate | amParse | date}}", + "community": "Ejecutando edición comunitaria, haz clic para solicitar una licencia comercial", + "expired": "Tu licencia ha vencido el {{expirationDate | amParse | date}}, por favor renuévala", + "purchase": "Comprar", + "renew": "Renovar", + "expiration-date": "Fecha de vencimiento" + }, + "password-expiry": { + "expire-days": "Para proteger tu cuenta, necesitarás cambiar tu contraseña en {{count}} días. ", + "expire-today": "Para proteger tu cuenta, necesitarás cambiar tu contraseña hoy. ", + "change-link": "Cambiar ahora" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "Instalación automática de módulos", + "loading": "Recuperando información de módulos...", + "finished": "Instalación finalizada. Haz clic en Reiniciar para continuar", + "start": "Inicio", + "end": "Fin" + } + } + }, + "widgets": { + "operations": { + "title": "Cambios", + "blade-subtitle": "Historial de cambios" + }, + "dynamicProperty": { + "title": "Propiedades dinámicas" + }, + "entitySettings": { + "title": "Configuraciones" + }, + "accountApi": { + "title": "Clave API", + "blade-subtitle": "Clave API" + }, + "accountRoles": { + "title": "Roles", + "blade-subtitle": "Gestionar roles" + } + }, + "dialogs": { + "folders-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar las carpetas o archivos seleccionados?" + }, + "properties-save": { + "title": "Guardar cambios", + "message": "Las propiedades han sido modificadas. ¿Quieres guardar los cambios?" + }, + "notification-template-save": { + "title": "Guardar cambios", + "message": "La plantilla de notificación ha sido modificada. ¿Quieres guardar los cambios?" + }, + "role-save": { + "title": "Guardar cambios", + "message": "El rol ha sido modificado. ¿Quieres guardar los cambios?" + }, + "roles-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar los roles seleccionados?" + }, + "account-save": { + "title": "Guardar cambios", + "message": "La cuenta ha sido modificada. ¿Quieres guardar los cambios?" + }, + "account-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar las cuentas seleccionadas?" + }, + "oauthapps-save": { + "title": "Guardar cambios", + "message": "La aplicación OAuth ha sido modificada. ¿Quieres guardar los cambios?" + }, + "oauthapps-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar la aplicación OAuth seleccionada?" + }, + "dynamic-property-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar esta propiedad dinámica?" + }, + "settings-value-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar los valores seleccionados?" + }, + "settings-save": { + "title": "Guardar cambios", + "message": "Las configuraciones han sido modificadas. ¿Quieres guardar los cambios?" + }, + "settings-delete": { + "title": "Confirmación de eliminación", + "message": "Las configuraciones han sido modificadas. ¿Quieres guardar los cambios?" + }, + "localizable-setting-value-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar los valores de diccionario seleccionados?" + }, + "localizable-setting-value-save": { + "title": "Guardar cambios", + "message": "Este valor de diccionario ha sido modificado. ¿Quieres guardar los cambios?" + }, + "email-sending-success": { + "title": "Envío exitoso", + "message": "¡El correo electrónico ha sido enviado con éxito!" + }, + "email-send-error": { + "title": "Error en el envío", + "message": "¡El correo electrónico no ha sido enviado! Error: {{error}}" + }, + "dictionary-items-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar {{quantity}} elemento(s) de diccionario seleccionado(s)?" + }, + "module-action": { + "title-install": "Confirmación de instalación", + "title-update": "Confirmación de actualización", + "title-delete": "Confirmación de desinstalación", + "message0-install": "Estás a punto de instalar:", + "message0-update": "Estás a punto de actualizar:", + "message0-delete": "Estás a punto de desinstalar:", + "message1-install": "Las siguientes dependencias también se instalarán:", + "message1-delete": "Los siguientes módulos dependientes también se desinstalarán:", + "message2-install": "¿Instalar la selección y las dependencias?", + "message2-update": "¿Actualizar la selección y las dependencias?", + "message2-delete": "¿Desinstalar este y TODOS los módulos dependientes?" + }, + "module-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres desinstalar este módulo?" + }, + "api-key-delete": { + "title": "Confirmación de eliminación", + "message": "¿Estás seguro de que quieres eliminar esta clave API?" + }, + "app-restart": { + "title": "Cierre de la aplicación", + "message": "Reinicia la aplicación para aplicar los cambios. Dependiendo de tu servicio de alojamiento, la aplicación puede reiniciarse automáticamente o puede que necesites hacerlo manualmente. ¿Estás seguro de que quieres cerrar la aplicación ahora?" + }, + "error-details": { + "title": "Detalles del error" + }, + "impersonate-no-url": { + "title": "Iniciar sesión en nombre de", + "message": "La URL de la tienda no se agregó a la configuración de la tienda. Por favor, contacta al administrador" + }, + "asset-upload-error": { + "title": "Error de carga", + "message": "¡Elige una carpeta! ¡No se puede cargar un archivo en la raíz!" + }, + "run-import": { + "title": "Confirmación de importación", + "message": "¿Estás seguro de que quieres importar datos de muestra?" + }, + "create-folder": { + "title": "El nombre de una carpeta debe cumplir con las siguientes reglas de nomenclatura:\n El nombre de la carpeta debe tener entre 3 y 63 caracteres de longitud.\n El nombre de la carpeta debe comenzar con una letra o número, y solo puede contener letras, números y guiones (-).\n Cada guion (-) debe estar inmediatamente precedido y seguido por una letra o número; no se permiten guiones consecutivos.\n Todas las letras en el nombre de una carpeta deben estar en minúsculas" + }, + "storefront-cache-reset-successfully": { + "title": "Reinicio de caché", + "message": "El caché de la aplicación de la tienda se ha reiniciado con éxito" + } + }, + "commands": { + "login-on-behalf": "Iniciar sesión en nombre de", + "reset-storefront-cache": "Reiniciar caché" + } + }, + "permissions": { + "platform:asset:access": "Ver recursos en el menú principal", + "platform:asset:delete": "Eliminar recursos de la Plataforma", + "platform:asset:update": "Cambiar recursos de la Plataforma", + "platform:asset:create": "Cargar nuevos recursos de la Plataforma", + "platform:asset:read": "Descargar recursos de la Plataforma", + "platform:module:read": "Ver detalles del módulo", + "platform:module:access": "Ver módulos en el menú principal", + "platform:module:manage": "Instalar/desinstalar módulos", + "platform:setting:read": "Leer configuraciones de la Plataforma", + "platform:setting:access": "Ver configuraciones en el menú principal", + "platform:setting:update": "Cambiar configuraciones de la Plataforma", + "platform:dynamic_properties:read": "Ver detalles de propiedades dinámicas", + "platform:dynamic_properties:create": "Crear nuevas propiedades dinámicas", + "platform:dynamic_properties:access": "Ver propiedades dinámicas en el menú principal", + "platform:dynamic_properties:update": "Cambiar propiedades dinámicas", + "platform:dynamic_properties:delete": "Eliminar propiedades dinámicas", + "platform:security:read": "Ver detalles de usuarios y roles", + "platform:security:create": "Crear nuevos usuarios y roles", + "platform:security:access": "Ver seguridad en el menú principal", + "platform:security:update": "Cambiar usuarios y roles", + "platform:security:delete": "Eliminar usuarios y roles", + "platform:security:verifyEmail": "Cambiar estado verificado y enviar correo electrónico de verificación", + "background_jobs:manage": "Acceso a la consola de Hangfire", + "platform:exportImport:access": "Ver Exportar/Importar en el menú principal", + "platform:import": "Importar datos de la Plataforma y módulos", + "platform:export": "Exportar datos de la Plataforma y módulos", + "platform:security:loginOnBehalf": "Iniciar sesión en nombre de un cliente" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Idiomas", + "description": "Lista de idiomas disponibles" + } + } + }, + "ModulesAutoInstalled": { + "description": "La bandera indica que los módulos se instalan automáticamente", + "title": "Módulos instalados" + }, + "ModulesAutoInstallState": { + "title": "Estado de autoinstalación de módulos", + "description": "Estado actual del asistente de autoinstalación de módulos" + }, + "SetupStep": { + "title": "Paso de configuración actual", + "description": "Paso actual en el asistente de configuración" + }, + "SampleDataState": { + "title": "Estado de datos de muestra", + "description": "Estado actual del asistente de datos de muestra" + }, + "SendDiagnosticData": { + "title": "Enviar datos de diagnóstico", + "description": "Enviar datos de diagnóstico de VC Platform a VC. Solo se puede desactivar con la compra de una licencia" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Diccionario para posibles tipos de cuenta", + "title": "Tipos de cuenta" + }, + "DefaultAccountType": { + "title": "Tipo de cuenta predeterminado", + "description": "Valor predeterminado para el tipo de cuenta al crear una nueva cuenta" + }, + "DefaultAccountStatus": { + "title": "Estado de cuenta predeterminado", + "description": "Valor predeterminado para el estado de la cuenta al crear una nueva cuenta" + }, + "DefaultExternalAccountStatus": { + "title": "Estado de cuenta externa predeterminado", + "description": "Valor predeterminado para el estado de la cuenta al crear una nueva cuenta durante el inicio de sesión externo" + }, + "EnablePruneExpiredTokensJob": { + "description": "Habilita la eliminación de tokens/autorizaciones caducados e inválidos", + "title": "Eliminar tokens caducados" + }, + "CronPruneExpiredTokensJob": { + "description": "Expresión cron para el trabajo de eliminación de tokens/autorizaciones caducados e inválidos", + "title": "Cron para el trabajo de eliminación de tokens" + }, + "FileExtensionsBlackList": { + "description": "Extensiones de archivo prohibidas para cargar por la Plataforma (además de 'FileExtensionsBlackList' en appsettings.json)", + "title": "Lista negra" + }, + "FileExtensionsWhiteList": { + "description": "Extensiones de archivo permitidas para cargar por la Plataforma (además de 'FileExtensionsWhiteList' en appsettings.json)", + "title": "Lista blanca" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Estado persistente del menú principal", + "title": "Estado persistente del menú principal" + } + }, + "Language": { + "description": "Idioma predeterminado (código de dos letras de ISO 639-1, insensible a mayúsculas y minúsculas). Ejemplo: es, en", + "title": "Idioma" + }, + "RegionalFormat": { + "description": "Formato regional predeterminado (código de configuración regional CLDR, con guion o guion bajo como delimitador, insensible a mayúsculas y minúsculas). Ejemplo: es, es_ES, sr_Cyrl, sr_Cyrl_RS", + "title": "Formato regional" + }, + "TimeZone": { + "description": "Zona horaria predeterminada (nombre de zona horaria IANA [base de datos tz], exactamente como en la base de datos, sensible a mayúsculas y minúsculas). Ejemplos: America/New_York, Europe/Madrid", + "title": "Zona horaria" + }, + "UseTimeAgo": { + "description": "Cuando se establece en verdadero (por defecto), el sistema muestra la fecha en formato 'hace unos segundos' siempre que sea posible", + "title": "Usar formato de tiempo relativo cuando sea posible" + }, + "FullDateThreshold": { + "description": "El formato de tiempo relativo cambiará a un formato de fecha completa después de un cierto número de unidades de tiempo", + "title": "Umbral de fecha completa" + }, + "FullDateThresholdUnit": { + "description": "Unidad del umbral de fecha completa", + "title": "Unidad del umbral de fecha completa" + }, + "Customization": { + "description": "JSON contiene configuraciones de personalización de la interfaz de usuario del gestor", + "title": "Personalización de la interfaz de usuario del gestor" + }, + "ShowMeridian": { + "description": "Mostrar indicador de meridiano de tiempo (AM o PM)", + "title": "Mostrar meridiano de tiempo" + } + }, + "Cache": { + "Enabled": { + "description": "Esta configuración te permite habilitar y deshabilitar globalmente el almacenamiento en caché para toda la aplicación de la Plataforma", + "title": "Habilitar o deshabilitar caché globalmente" + }, + "AbsoulteExpiration": { + "description": "Especifica el tiempo máximo que los datos almacenados en caché se mantienen en el caché. Formato: [-][d.]hh:mm:ss[.fffffff]", + "title": "Tiempo de vida global de los objetos en caché" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Estados de cuenta", + "description": "Cambiar estados de cuenta" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Common.json new file mode 100644 index 00000000000..78333b8e791 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "Ajouter", + "activate": "Activer", + "assign": "Assigner", + "cancel": "Annuler", + "clear": "Effacer", + "clear-all": "Tout effacer", + "clone": "Cloner", + "close": "Fermer", + "confirm": "Confirmer", + "copy-link": "Copier le lien", + "copy": "Copier", + "create": "Créer", + "cut": "Couper", + "delete": "Supprimer", + "add-all": "Tout ajouter", + "remove-all": "Tout supprimer", + "download": "Télécharger", + "edit": "Modifier", + "export": "Exporter", + "generate": "Générer", + "import": "Importer", + "import-sample-data": "Importer des données d'exemple", + "install": "Installer", + "manage": "Gérer", + "more": "Plus", + "no": "Non", + "new-folder": "Nouveau dossier", + "new-license": "Renouveler la licence", + "ok": "OK", + "paste": "Coller", + "pick-selected": "Sélectionner", + "preview": "Aperçu", + "open-browser": "Ouvrir dans le navigateur", + "redo": "Rétablir", + "refresh": "Actualiser", + "remove": "Supprimer", + "reset": "Réinitialiser", + "restart": "Redémarrer", + "save": "Enregistrer", + "send": "Envoyer", + "select-all": "Tout sélectionner", + "set-to-default": "Rétablir par défaut", + "start-export": "Démarrer l'exportation", + "settings": "Paramètres", + "sign-out": "Se déconnecter", + "undo": "Annuler", + "uninstall": "Désinstaller", + "unselect-all": "Tout désélectionner", + "update": "Mettre à jour", + "upload": "Téléverser", + "yes": "Oui", + "add-new-property": "Ajouter une nouvelle propriété", + "manage-type-properties": "Types de propriétés", + "manage-profile": "Gérer le profil", + "minimize": "Réduire", + "maximize": "Agrandir", + "stop-sending": "Arrêter l'envoi", + "set-active": "Définir comme actif", + "reject-user": "Rejeter l'utilisateur", + "change-password": "Changer le mot de passe", + "unlock-account": "Débloquer le compte", + "lock-account": "Verrouiller le compte", + "today": "Aujourd'hui", + "time": "Heure", + "now": "Maintenant", + "date": "Date", + "see-details": "Voir les détails", + "dismiss": "Ignorer", + "hide-empty-property-values": "Masquer les valeurs vides", + "show-empty-property-values": "Afficher les valeurs vides", + "titles": { + "refresh": "Actualiser", + "new-folder": "Nouveau dossier", + "upload": "Téléverser" + } + }, + "list": { + "no-data": "Aucune donnée", + "count": "Nombre", + "loading": "Chargement...", + "item-not-found": "Erreur : Non trouvé" + }, + "placeholders": { + "n-a": "N/A", + "no-file": "Choisir un fichier", + "search-keyword": "Rechercher un mot-clé...", + "select-value": "Sélectionner une valeur", + "select-values": "Sélectionner une valeur" + }, + "dialogs": { + "delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les entrées sélectionnées ?" + } + }, + "properties": { + "short-text": { + "title": "Texte court", + "description": "Valeurs de texte de moins de 1024 caractères" + }, + "long-text": { + "title": "Texte long", + "description": "Texte illimité sans restriction de taille" + }, + "integer": { + "title": "Entier", + "description": "Nombre entier" + }, + "decimal": { + "title": "Nombre décimal", + "description": "Nombre décimal avec une précision de 18 et une échelle de 4" + }, + "date-time": { + "title": "Date et heure", + "description": "Sélectionner une date" + }, + "boolean": { + "title": "Booléen", + "description": "Type interrupteur" + }, + "html": { + "title": "HTML", + "description": "Balisage HTML" + }, + "undefined": { + "title": "Non défini" + }, + "image": { + "title": "Image", + "description": "Type image" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "Entrez un texte court", + "secure-string": "Entrez un texte secret", + "email": "Entrez un email", + "url": "Entrez une URL", + "long-text": "Entrez un texte long", + "integer": "Entrez un nombre entier", + "number": "Entrez un nombre décimal", + "date-time": "Choisissez une date", + "short-text-multivalue": "Ajouter une valeur", + "integer-multivalue": "Ajouter un entier", + "number-multivalue": "Ajouter un décimal", + "short-text-dictionary": "Sélectionner une valeur", + "short-text-dictionary-multivalue": "Sélectionner une valeur", + "short-text-multilang": "Entrez une valeur", + "long-text-multilang": "Entrez une valeur", + "short-text-multivalue-multilang": "Ajouter une valeur", + "short-text-dictionary-multilang": "Sélectionner une valeur", + "short-text-dictionary-multivalue-multilang": "Sélectionner une valeur", + "long-text-dictionary-multivalue-multilang": "Sélectionner une valeur" + } + }, + "short-text-input": { + "placeholder": "Entrez une valeur", + "required": "Ce champ est obligatoire", + "maxLength": "Ce champ ne doit pas contenir plus de {{number}} caractères" + }, + "validators": { + "uriWithoutQuery": { + "error": "Format d'URI invalide. Assurez-vous que l'URI n'a pas de paramètres de requête" + } + }, + "errors": { + "generic-error": "Erreur", + "400": "Mauvaise requête", + "401": "Non autorisé", + "403": "Interdit", + "404": "Non trouvé", + "405": "Méthode non autorisée", + "406": "Non acceptable", + "407": "Authentification proxy requise", + "408": "Délai de requête dépassé", + "409": "Conflit", + "429": "Trop de requêtes", + "500": "Erreur interne du serveur", + "501": "Non implémenté", + "502": "Mauvaise passerelle", + "503": "Service indisponible", + "504": "Délai de passerelle dépassé" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..c229caf8bab --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "Afghanistan", + "EGY": "Égypte", + "ALA": "Åland", + "ALB": "Albanie", + "DZA": "Algérie", + "ASM": "Samoa américaines", + "VIR": "Îles Vierges américaines", + "AND": "Andorre", + "AGO": "Angola", + "AIA": "Anguilla", + "ATA": "Antarctique (statut spécial par le Traité sur l'Antarctique)", + "ATG": "Antigua-et-Barbuda", + "GNQ": "Guinée équatoriale", + "ARG": "Argentine", + "ARM": "Arménie", + "ABW": "Aruba", + "AZE": "Azerbaïdjan", + "ETH": "Éthiopie", + "AUS": "Australie", + "BHS": "Bahamas", + "BHR": "Bahreïn", + "BGD": "Bangladesh", + "BRB": "Barbade", + "BLR": "Biélorussie", + "BEL": "Belgique", + "BLZ": "Belize", + "BEN": "Bénin", + "BMU": "Bermudes", + "BTN": "Bhoutan", + "BOL": "Bolivie", + "BES": "Bonaire, Saint-Eustache et Saba", + "BIH": "Bosnie-Herzégovine", + "BWA": "Botswana", + "BVT": "Île Bouvet", + "BRA": "Brésil", + "VGB": "Îles Vierges britanniques", + "IOT": "Territoire britannique de l'océan Indien", + "BRN": "Brunei", + "BGR": "Bulgarie", + "BFA": "Burkina Faso", + "BDI": "Burundi", + "CHL": "Chili", + "CHN": "République populaire de Chine", + "COK": "Îles Cook", + "CRI": "Costa Rica", + "CUW": "Curaçao", + "DNK": "Danemark", + "DEU": "Allemagne", + "DMA": "Dominique", + "DOM": "République dominicaine", + "DJI": "Djibouti", + "ECU": "Équateur", + "CIV": "Côte d'Ivoire", + "SLV": "Salvador", + "ERI": "Érythrée", + "EST": "Estonie", + "SWZ": "Eswatini", + "FLK": "Îles Malouines", + "FRO": "Îles Féroé", + "FJI": "Fidji", + "FIN": "Finlande", + "FRA": "France", + "GUF": "Guyane française", + "PYF": "Polynésie française", + "ATF": "Terres australes et antarctiques françaises", + "GAB": "Gabon", + "GMB": "Gambie", + "GEO": "Géorgie", + "GHA": "Ghana", + "GIB": "Gibraltar", + "GRD": "Grenade", + "GRC": "Grèce", + "GRL": "Groenland", + "GLP": "Guadeloupe", + "GUM": "Guam", + "GTM": "Guatemala", + "GGY": "Guernesey", + "GIN": "Guinée", + "GNB": "Guinée-Bissau", + "GUY": "Guyana", + "HTI": "Haïti", + "HMD": "Îles Heard-et-MacDonald", + "HND": "Honduras", + "HKG": "Hong Kong", + "IND": "Inde", + "IDN": "Indonésie", + "IMN": "Île de Man", + "IRQ": "Irak", + "IRN": "Iran", + "IRL": "Irlande", + "ISL": "Islande", + "ISR": "Israël", + "ITA": "Italie", + "JAM": "Jamaïque", + "JPN": "Japon", + "YEM": "Yémen", + "JEY": "Jersey", + "JOR": "Jordanie", + "CYM": "Îles Caïmans", + "KHM": "Cambodge", + "CMR": "Cameroun", + "CAN": "Canada", + "CPV": "Cap-Vert", + "KAZ": "Kazakhstan", + "QAT": "Qatar", + "KEN": "Kenya", + "KGZ": "Kirghizistan", + "KIR": "Kiribati", + "CCK": "Îles Cocos", + "COL": "Colombie", + "COM": "Comores", + "COD": "République démocratique du Congo", + "COG": "République du Congo", + "PRK": "Corée du Nord", + "KOR": "Corée du Sud", + "HRV": "Croatie", + "CUB": "Cuba", + "KWT": "Koweït", + "LAO": "Laos", + "LSO": "Lesotho", + "LVA": "Lettonie", + "LBN": "Liban", + "LBR": "Liberia", + "LBY": "Libye", + "LIE": "Liechtenstein", + "LTU": "Lituanie", + "LUX": "Luxembourg", + "MAC": "Macao", + "MDG": "Madagascar", + "MWI": "Malawi", + "MYS": "Malaisie", + "MDV": "Maldives", + "MLI": "Mali", + "MLT": "Malte", + "MAR": "Maroc", + "MHL": "Îles Marshall", + "MTQ": "Martinique", + "MRT": "Mauritanie", + "MUS": "Maurice", + "MYT": "Mayotte", + "MEX": "Mexique", + "FSM": "Micronésie", + "MDA": "Moldavie", + "MCO": "Monaco", + "MNG": "Mongolie", + "MNE": "Monténégro", + "MSR": "Montserrat", + "MOZ": "Mozambique", + "MMR": "Myanmar", + "NAM": "Namibie", + "NRU": "Nauru", + "NPL": "Népal", + "NCL": "Nouvelle-Calédonie", + "NZL": "Nouvelle-Zélande", + "NIC": "Nicaragua", + "NLD": "Pays-Bas", + "NER": "Niger", + "NGA": "Nigeria", + "NIU": "Niue", + "MNP": "Îles Mariannes du Nord", + "MKD": "Macédoine du Nord", + "NFK": "Île Norfolk", + "NOR": "Norvège", + "OMN": "Oman", + "AUT": "Autriche", + "TLS": "Timor oriental", + "PAK": "Pakistan", + "PSE": "Palestine", + "PLW": "Palaos", + "PAN": "Panama", + "PNG": "Papouasie-Nouvelle-Guinée", + "PRY": "Paraguay", + "PER": "Pérou", + "PHL": "Philippines", + "PCN": "Îles Pitcairn", + "POL": "Pologne", + "PRT": "Portugal", + "PRI": "Porto Rico", + "REU": "La Réunion", + "RWA": "Rwanda", + "ROU": "Roumanie", + "RUS": "Russie", + "SLB": "Îles Salomon", + "BLM": "Saint-Barthélemy", + "MAF": "Saint-Martin (partie française)", + "ZMB": "Zambie", + "WSM": "Samoa", + "SMR": "Saint-Marin", + "STP": "Sao Tomé-et-Principe", + "SAU": "Arabie saoudite", + "SWE": "Suède", + "CHE": "Suisse", + "SEN": "Sénégal", + "SRB": "Serbie", + "SYC": "Seychelles", + "SLE": "Sierra Leone", + "ZWE": "Zimbabwe", + "SGP": "Singapour", + "SXM": "Saint-Martin (partie néerlandaise)", + "SVK": "Slovaquie", + "SVN": "Slovénie", + "SOM": "Somalie", + "ESP": "Espagne", + "LKA": "Sri Lanka", + "SHN": "Sainte-Hélène, Ascension et Tristan da Cunha", + "KNA": "Saint-Kitts-et-Nevis", + "LCA": "Sainte-Lucie", + "SPM": "Saint-Pierre-et-Miquelon", + "VCT": "Saint-Vincent-et-les-Grenadines", + "ZAF": "Afrique du Sud", + "SDN": "Soudan", + "SGS": "Géorgie du Sud-et-les Îles Sandwich du Sud", + "SSD": "Soudan du Sud", + "SUR": "Suriname", + "SJM": "Svalbard et Jan Mayen", + "SYR": "Syrie", + "TJK": "Tadjikistan", + "TWN": "Taïwan", + "TZA": "Tanzanie", + "THA": "Thaïlande", + "TGO": "Togo", + "TKL": "Tokelau", + "TON": "Tonga", + "TTO": "Trinité-et-Tobago", + "TCD": "Tchad", + "CZE": "République tchèque", + "TUN": "Tunisie", + "TUR": "Turquie", + "TKM": "Turkménistan", + "TCA": "Îles Turques-et-Caïques", + "TUV": "Tuvalu", + "UGA": "Ouganda", + "UKR": "Ukraine", + "HUN": "Hongrie", + "UMI": "Îles mineures éloignées des États-Unis", + "URY": "Uruguay", + "UZB": "Ouzbékistan", + "VUT": "Vanuatu", + "VAT": "Vatican", + "VEN": "Venezuela", + "ARE": "Émirats arabes unis", + "USA": "États-Unis", + "GBR": "Royaume-Uni", + "VNM": "Viêt Nam", + "WLF": "Wallis-et-Futuna", + "CXR": "Île Christmas", + "ESH": "Sahara occidental", + "CAF": "République centrafricaine", + "CYP": "Chypre" + }, + "CAN": { + "AB": "Alberta", + "BC": "Colombie-Britannique", + "MB": "Manitoba", + "NB": "Nouveau-Brunswick", + "NL": "Terre-Neuve-et-Labrador", + "NT": "Territoires du Nord-Ouest", + "NS": "Nouvelle-Écosse", + "NU": "Nunavut", + "ON": "Ontario", + "PE": "Île-du-Prince-Édouard", + "QC": "Québec", + "SK": "Saskatchewan", + "YT": "Yukon" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..5d45ad56aaa --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/fr.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "Accueil", + "browse": "Parcourir", + "configuration": "Configuration", + "notifications": "Notifications", + "more": "Plus", + "settings": "Paramètres", + "dynamic-properties": "Propriétés dynamiques", + "security": "Sécurité", + "modules": "Modules", + "export-import": "Exporter & Importer", + "user-profile": "Profil utilisateur", + "assets": "Ressources", + "toggle-favorites": "Maj + Espace pour basculer les favoris", + "help": "Aide" + }, + "navigation": { + "back": "Retour" + }, + "blades": { + "system-info": { + "title": "Informations sur la plateforme", + "labels": { + "clr-version": "Version CLR", + "environment-name": "Mode d'environnement", + "is-64-bit-os": "Système d'exploitation 64 bits", + "is-64-bit-process": "Processus 64 bits", + "database-provider": "Fournisseur de base de données" + } + }, + "asset-list": { + "title": "Gestion des ressources", + "bread-crumb-top": "Toutes les ressources", + "labels": { + "picture": "Image", + "name": "Nom", + "size": "Taille", + "modified": "Modifié", + "actions": "Actions", + "group": "Groupe", + "language": "Langue" + } + }, + "asset-upload": { + "title": "Téléchargement de ressource", + "labels": { + "select-files": "Sélectionner des fichiers", + "drag-note": "Glisser-déposer les fichiers ici", + "progress": "Progression", + "asset-uploaded": "Ressource(s) téléchargée(s)" + }, + "placeholders": { + "image-url": "Coller l'URL du fichier ici" + } + }, + "operation-list": { + "labels": { + "login": "Connexion", + "details": "Détails", + "time": "Heure" + } + }, + "dynamicObject-list": { + "title": "Types d'objets dynamiques", + "subtitle": "Choisir le type d'objet pour gérer les propriétés dynamiques", + "labels": { + "no-objects": "Aucun objet ne prend encore en charge les propriétés dynamiques" + } + }, + "dynamicProperty-detail": { + "title": "Gérer la propriété", + "subtitle": "Gérer la propriété", + "subtitle-new": "Nouvelle propriété", + "labels": { + "property-name": "Nom de la propriété", + "required": "Obligatoire", + "multivalue": "Multivaleur", + "multilingual": "Multilingue", + "dictionary": "Dictionnaire", + "description": "Description", + "display-order": "Ordre d'affichage", + "display-name": "Nom d'affichage", + "value-type": "Type de valeur", + "dictionary-values": "Valeurs du dictionnaire", + "manage-dictionary": "Gérer le dictionnaire" + }, + "placeholders": { + "description": "Entrer la description de la propriété", + "display-name": "Entrer le nom d'affichage...", + "display-order": "Ordre d'affichage" + }, + "validations": { + "multivalue": "Une propriété multivaleur ne peut avoir que des types de valeur Texte court, Entier ou Décimal", + "multilingual": "Seules les valeurs texte ou HTML peuvent être multilingues", + "dictionary": "Seuls les dictionnaires de type de valeur Texte court sont pris en charge" + } + }, + "dynamicProperty-list": { + "subtitle": "Gérer les propriétés dynamiques", + "labels": { + "no-properties": "Pas encore de propriétés dynamiques" + } + }, + "notifications-menu": { + "subtitle": "Travailler avec le système de notifications" + }, + "property-dictionary": { + "title": "Valeurs du dictionnaire", + "subtitle": "Gérer les valeurs du dictionnaire", + "labels": { + "edit-value": "Modifier la valeur", + "new-value": "Nouvelle valeur", + "dictionary-name": "Nom de l'entrée du dictionnaire", + "localized-values": "Valeurs localisées", + "current-values": "Valeurs actuelles", + "name": "Nom", + "values": "Valeurs" + }, + "validations": { + "dictionary-name-required": "Obligatoire", + "dictionary-name": "Nom en double trouvé", + "localized-values-required": "Obligatoire", + "localized-values": "Nom en double trouvé", + "dictionary": "Seuls les dictionnaires de type de valeur Texte court sont pris en charge" + }, + "placeholders": { + "dictionary-name": "Entrer le nom", + "localized-values": "Entrer la valeur" + } + }, + "propertyValue-list": { + "title": "Propriétés dynamiques", + "subtitle": "", + "labels": { + "header": "Valeurs des propriétés", + "no-properties": "Cette entité n'a pas encore de propriétés dynamiques. Cliquez sur 'Types de propriétés' et créez des propriétés. Fermez et rouvrez la vue de l'entité actuelle pour charger les propriétés dynamiques" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Obligatoire" + }, + "labels": { + "new-value": "Nouvelle valeur", + "current-values": "Valeurs actuelles", + "values": "Valeurs" + }, + "placeholders": { + "value": "Entrer la valeur" + } + }, + "export-main": { + "title": "Exportation de données", + "labels": { + "platform-entries": "Entrées de la plateforme", + "choose-modules": "Choisir les modules à exporter", + "download-url": "URL de téléchargement", + "errors": "Erreurs", + "start": "Début", + "end": "Fin" + }, + "menu": { + "security": { + "title": "Sécurité", + "description": "Comptes et rôles" + }, + "binary": { + "title": "Binaire", + "description": "Données binaires" + }, + "settings": { + "title": "Paramètres", + "description": "Paramètres de la plateforme" + }, + "dynamic-props": { + "title": "Propriétés dynamiques", + "description": "Propriétés dynamiques de la plateforme" + } + } + }, + "import-main": { + "title": "Importation de données", + "labels": { + "start-import": "Démarrer l'importation", + "select-file": "Sélectionner un fichier .zip à importer. Le fichier doit être produit par l'exportation de données du Commerce Manager", + "drag-note": "Glisser-déposer un fichier .zip à importer. Le fichier doit être produit par l'exportation de données du Commerce Manager", + "upload-failed": "Échec du téléchargement", + "upload-progress": "Progression du téléchargement", + "import-progress": "Progression de l'importation", + "import-finished": "Importation terminée", + "import-data-information": "Informations sur les données importées", + "author": "Auteur", + "data-file-created": "Fichier de données créé", + "created-platform-version": "Créé dans la version de la plateforme", + "platform-entries": "Entrées de la plateforme", + "choose-modules": "Choisir les modules à importer", + "no-data": "Pas de données", + "errors": "Erreurs", + "start": "Début", + "end": "Fin" + }, + "menu": { + "security": { + "title": "Sécurité", + "description": "Comptes et rôles" + }, + "binary": { + "title": "Binaire", + "description": "Données binaires" + }, + "settings": { + "title": "Paramètres", + "description": "Paramètres de la plateforme" + }, + "dynamic-props": { + "title": "Propriétés dynamiques", + "description": "Propriétés dynamiques de la plateforme" + } + } + }, + "exportImport-main": { + "title": "Exportation et importation de données", + "menu": { + "export": { + "title": "Exporter", + "description": "Les données seront sauvegardées dans un fichier pour pouvoir être importées ultérieurement" + }, + "import": { + "title": "Importer", + "description": "Importer des données à partir d'un fichier exporté" + } + } + }, + "resolve-result": { + "title": "Aperçu du résultat", + "labels": { + "subject": "Sujet", + "body": "Corps" + } + }, + "module-settings-detail": { + "title": "Paramètres du module" + }, + "module-wizard-progress-step": { + "title-install": "Installation du module", + "title-update": "Mise à jour du module", + "title-uninstall": "Désinstallation du module", + "labels": { + "start": "Début", + "end": "Fin", + "progress-messages": "Messages de progression", + "process-completed": "Processus d'installation du module terminé", + "restart-application": "Redémarrer l'application maintenant ou plus tard" + } + }, + "module-detail": { + "title": "Informations sur le module", + "labels": { + "i-accept-the": "J'accepte la", + "license-link": "licence", + "license": "Licence", + "agreement": "accord", + "install-from-file": "Installer / mettre à jour le module à partir d'un fichier", + "select-module-file": "Télécharger un fichier de module (.zip) depuis une source externe en dehors du dépôt central des modules", + "upload-progress": "Progression du téléchargement", + "module-info": "Infos du module", + "title": "Titre", + "official": "Module officiel par {{$owner}}", + "owners": "Développé par {{$owner}}", + "author": "Auteur", + "authors": "Auteurs", + "id": "ID", + "version": "Version", + "project-information": "Informations sur le projet", + "description": "Description", + "platform-version": "Version de la plateforme", + "dependencies": "Dépendances", + "optional-dependencies": "Dépendances optionnelles", + "tags": "Tags", + "install-version": "Installer la version", + "errors": "Erreurs" + } + }, + "modules-main": { + "title": "Modules", + "labels": { + "updates": "Mises à jour", + "available": "Disponibles", + "installed": "Installés", + "withErrors": "Erreurs", + "advanced": "Avancé" + } + }, + "modules-list": { + "subtitle": "Gestion des modules", + "labels": { + "grouping": "Afficher les paquets de modules", + "ungrouped": "Autres", + "no-updates": "Aucune mise à jour trouvée", + "no-modules-part1": "Aucun nouveau module à installer", + "no-installed-modules": "Aucun module installé trouvé", + "icon": "Icône", + "up-to-date": "Le module est à jour", + "update-available": "Mise à jour disponible pour ce module", + "module": "Module", + "version": "Version", + "author": "Auteur", + "installed": "Modules installés", + "manual-install-warning": "Attention ! Les modules installés manuellement ne démarreront pas car RefreshProbingFolderOnStart est défini sur false" + } + }, + "history": { + "title": "Événements système", + "subtitle": "Historique des événements", + "labels": { + "type": "Type", + "title": "Titre", + "created": "Créé", + "description": "Description" + } + }, + "historyDetailDefault": { + "title": "Détail de l'événement", + "subtitle": "Détail de l'événement", + "labels": { + "start": "Début", + "end": "Fin", + "elapsed": "Écoulé", + "errors": "Erreurs", + "stats": "Traité {{ processedCount }} sur {{ totalCount }} enregistrements" + } + }, + "menuHeader": { + "labels": { + "history": "Historique", + "clear-recent": "Effacer tout l'historique récent" + } + }, + "account-changePassword": { + "labels": { + "title": "Veuillez entrer un nouveau mot de passe", + "login": "Identifiant", + "force-change-info": "Votre mot de passe a expiré. Vous devez changer le mot de passe pour continuer à utiliser le gestionnaire", + "current-password": "Mot de passe actuel", + "new-password": "Nouveau mot de passe", + "repeat-password": "Répéter le nouveau mot de passe", + "cancel": "Annuler", + "save": "Changer", + "fail": "Désolé, nous n'avons pas pu réinitialiser le mot de passe pour cet utilisateur" + }, + "validations": { + "current-password": "Obligatoire", + "new-password": "L'ancien et le nouveau mot de passe sont identiques !", + "repeat-password": "Les nouveaux mots de passe ne correspondent pas !" + }, + "placeholders": { + "current-password": "Entrez le mot de passe actuel", + "new-password": "Entrez le nouveau mot de passe", + "repeat-password": "Répétez le nouveau mot de passe" + } + }, + "account-resetPassword": { + "subtitle": "Changer le mot de passe de l'utilisateur", + "labels": { + "new-password": "Nouveau mot de passe", + "repeat-password": "Répéter le mot de passe", + "force-password-change": "Obliger cet utilisateur à changer son mot de passe lors de sa prochaine connexion" + }, + "validations": { + "repeat-password": "Les nouveaux mots de passe ne correspondent pas !", + "invalid-token": "Le jeton de réinitialisation du mot de passe est invalide ou a expiré", + "password-too-weak": "Le nouveau mot de passe ne respecte pas une ou plusieurs politiques de sécurité des mots de passe :", + "passwordTooShort": "Les mots de passe doivent comporter au moins {{parameter}} caractères", + "passwordRequiresUniqueChars": "Les mots de passe doivent utiliser au moins {{parameter}} caractères différents", + "passwordRequiresLower": "Les mots de passe doivent contenir au moins une minuscule ('a'-'z')", + "passwordRequiresUpper": "Les mots de passe doivent contenir au moins une majuscule ('A'-'Z')", + "passwordRequiresDigit": "Les mots de passe doivent contenir au moins un chiffre ('0'-'9')", + "passwordRequiresNonAlphanumeric": "Les mots de passe doivent contenir au moins un caractère non alphanumérique", + "recentPasswordUsed": "Vous avez déjà utilisé ce mot de passe dans le passé. Choisissez-en un autre" + }, + "placeholders": { + "new-password": "Entrez le nouveau mot de passe", + "repeat-password": "Répétez le nouveau mot de passe" + } + }, + "account-detail": { + "title-new": "Nouveau compte", + "labels": { + "user-information": "Informations utilisateur", + "is-administrator": "Est administrateur", + "account-type": "Type de compte", + "login": "Identifiant", + "account-state": "Statut du compte", + "account-email": "Email", + "locked-state": "Statut verrouillé", + "status": "Statut", + "verified": "Vérifié", + "resend-link": "Renvoyer le lien", + "link-sent": "Le lien a été envoyé", + "last-login-date": "Date de dernière connexion" + }, + "placeholders": { + "account-type": "Sélectionner ...", + "email": "Entrez l'email", + "user-name": "Entrez le nom d'utilisateur", + "status": "Sélectionner ..." + } + }, + "account-list": { + "title": "Utilisateurs", + "subtitle": "Service de sécurité", + "labels": { + "name": "Nom", + "account-type": "Type de compte", + "login": "Identifiant", + "state": "Statut", + "status": "Statut" + } + }, + "account-api": { + "labels": { + "api-key": "Clé API", + "is-active": "est active" + }, + "placeholders": { + "api-key": "Entrez la clé API" + } + }, + "role-detail": { + "subtitle": "Détails du rôle", + "labels": { + "summary": "Résumé", + "name": "Nom", + "description": "Description", + "assigned-permissions": "Permissions attribuées", + "permission-name": "Nom", + "assigned-scopes": "Portées attribuées", + "no-permissions-assigned": "Aucune permission attribuée" + }, + "placeholders": { + "name": "Entrez le nom", + "description": "Entrez la description" + } + }, + "account-roles": { + "subtitle": "Attribuer des rôles", + "labels": { + "select-roles": "Sélectionnez les rôles à attribuer", + "no-roles": "Aucun rôle à attribuer" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "Rôles attribués", + "no-assigned": "Aucun rôle attribué" + } + }, + "permission-scopes": { + "subtitle": "Configurer les portées des permissions", + "labels": { + "select-bounded-scopes": "Sélectionner les portées limitées", + "selected": "Sélectionné", + "scope-name": "Nom et paramètres de la portée", + "no-scopes": "Aucune portée" + } + }, + "role-permissions": { + "subtitle": "Attribuer des permissions", + "labels": { + "select-permissions": "Sélectionner les permissions à attribuer" + } + }, + "new-role-wizard": { + "title": "Nouveau rôle", + "labels": { + "summary": "Résumé", + "name": "Nom", + "description": "Description", + "assign-permissions": "Attribuer des permissions" + }, + "placeholders": { + "name": "Entrez le nom", + "description": "Entrez la description" + } + }, + "role-list": { + "title": "Rôles", + "subtitle": "Service de sécurité", + "labels": { + "name": "Nom" + } + }, + "oauthapps": { + "labels": { + "clientId": "ID client", + "displayName": "Nom d'affichage", + "type": "Type", + "clientSecret": "Secret client", + "assigned-permissions": "Permissions attribuées", + "redirectUris": "URIs de redirection", + "postLogoutRedirectUris": "URIs de redirection après déconnexion" + }, + "placeholders": { + "clientId": "Saisissez l'ID client", + "displayName": "Saisissez le nom d'affichage", + "type": "Saisissez le type", + "clientSecret": "Saisissez le secret client" + } + }, + "oauthapps-list": { + "title": "Applications OAuth", + "subtitle": "Service de sécurité" + }, + "oauthapps-detail": { + "title": "Modifier l'application OAuth", + "title-new": "Créer une application OAuth", + "subtitle": "Service de sécurité", + "labels": { + "clientSecret-warning": "Attention ! Vous devez copier le secret maintenant. Il sera caché après la fermeture du panneau", + "urls": "URLs" + }, + "blades": { + "edit-redirectUris": { + "title": "URIs de redirection", + "subtitle": "Gérer les URIs de redirection" + }, + "edit-postLogoutRedirectUris": { + "title": "URIs de redirection après déconnexion", + "subtitle": "Gérer les URIs de redirection après déconnexion" + } + } + }, + "login": { + "labels": { + "sign-in": "Connectez-vous au gestionnaire {{title}}", + "login": "Identifiant", + "password": "Mot de passe", + "remember-me": "Se souvenir de moi", + "external-sign-in": "Se connecter avec {{displayName}}", + "forgot-password": "Mot de passe oublié ?", + "log-in": "Se connecter", + "log-in-placeholder": "Entrez votre email ou nom d'utilisateur", + "password-placeholder": "Entrez votre mot de passe", + "azure-log-in-label": "Se connecter au site d'administration via Azure", + "password-log-in-type": "Utilisateur système", + "or": "ou", + "signing-in": "Connexion en cours..." + } + }, + "forgotpassword": { + "title": "Mot de passe oublié ?", + "labels": { + "login": "Identifiant ou email", + "description": "Nous vous enverrons un email avec les instructions pour réinitialiser votre mot de passe", + "success": "Un email avec les instructions vous a été envoyé", + "fail": "Désolé, nous n'avons pas pu réinitialiser le mot de passe pour cet utilisateur", + "back": "Retour", + "submit": "Envoyer", + "time-limit": "Vous pouvez réessayer dans {{countdown}}", + "time-limit-end": "Vous pouvez réessayer maintenant" + }, + "placeholders": { + "login-or-email": "Entrez l'identifiant ou l'email" + } + }, + "access-denied": { + "title": "Accès refusé", + "labels": { + "message": "Vous n'avez pas accès à cette ressource. Veuillez contacter votre administrateur", + "button": "Se connecter avec d'autres identifiants" + } + }, + "resetpassword": { + "title": "Réinitialisation du mot de passe", + "labels": { + "success": "Votre mot de passe a été réinitialisé", + "fail": "Désolé, nous n'avons pas pu réinitialiser le mot de passe pour cet utilisateur", + "submit": "Réinitialiser", + "log-in": "Se connecter" + } + }, + "license": { + "title": "Licence actuelle", + "title-new": "Activation d'une nouvelle licence", + "license-info": "Informations de licence", + "license-activation": "Activation de la licence", + "labels": { + "info-running-no-license": "Cette instance de Virto Commerce fonctionne avec", + "info-open-source-license": "une licence communautaire Open Source", + "info0": "Acquisition ou renouvellement de la licence :", + "info1": "Soumettez le ", + "info2": "Nous traiterons votre demande et vous contacterons bientôt", + "info3": "Une fois que vous aurez reçu le \"Code d'activation\" et/ou le fichier de licence, remplissez l'un des champs d'activation ci-dessous", + "info4": "Le système affichera les nouvelles informations de licence. Vérifiez-les et cliquez sur \"Activer\" pour confirmer", + "customer": "Licence émise pour", + "type": "Type", + "expiration": "Expiration", + "email": "Email du client", + "request-license": "Formulaire de demande de licence", + "code-descr": "Entrez le \"Code d'activation\" de licence reçu et appuyez sur [Entrée]. C'est la méthode d'activation de licence la plus rapide. (Nécessite une connexion Internet)", + "file-descr": "Vous pouvez également fournir le fichier de licence reçu. (Activation hors ligne)", + "upload-progress": "Progression du téléchargement", + "errors": "Erreur d'activation" + }, + "placeholders": { + "code": "Entrez le code d'activation" + } + }, + "new-account-wizard": { + "labels": { + "login": "Identifiant", + "email": "Email", + "password": "Mot de passe", + "repeat-password": "Répéter le mot de passe", + "assign-roles": "Attribuer des rôles" + }, + "placeholders": { + "email": "Entrez l'email", + "login": "Entrez l'identifiant", + "password": "Entrez le nouveau mot de passe", + "repeat-password": "Répétez le nouveau mot de passe" + }, + "validations": { + "repeat-password": "Les mots de passe saisis ne correspondent pas !", + "password-too-weak": "Le mot de passe saisi ne respecte pas une ou plusieurs politiques de sécurité des mots de passe :" + } + }, + "security-main": { + "title": "Sécurité", + "subtitle": "Gestion des utilisateurs" + }, + "entitySetting-list": { + "title": "Paramètres" + }, + "setting-dictionary": { + "subtitle": "Gérer les valeurs du dictionnaire", + "labels": { + "new-value": "Veuillez entrer une valeur", + "current-values": "Valeurs actuelles", + "value": "Valeur" + }, + "validations": { + "new-value-required": "Obligatoire", + "new-value": "Valeur en double trouvée" + }, + "placeholders": { + "new-value": "Veuillez entrer une valeur" + } + }, + "settings-detail": { + "title": "Valeurs des paramètres", + "hide-description": "Masquer" + }, + "settingGroup-list": { + "title": "Paramètres", + "bread-crumb-top": "Tous les paramètres" + }, + "settings-uploader": { + "drag-drop-comment": "Glissez et déposez le fichier ici", + "or": "ou", + "browse-your-files": "parcourez vos fichiers" + }, + "localizable-setting-value-list": { + "subtitle": "Gérer les valeurs du dictionnaire" + }, + "localizable-setting-value-details": { + "title": "Modifier la valeur du dictionnaire", + "alias": "Valeur système" + }, + "user-profile": { + "title": "Profil utilisateur", + "labels": { + "language": "Langue", + "language-description": "Langue d'affichage. Effacez pour utiliser la langue du navigateur ou la langue par défaut", + "regional-format": "Format régional", + "regional-format-description": "Format régional des nombres, de la monnaie, de la date et de l'heure. Effacez pour utiliser le format régional du navigateur ou par défaut", + "time-zone": "Fuseau horaire", + "time-zone-description": "Fuseau horaire actuel de l'utilisateur au format IANA (base de données tz). Sélectionnez la ville la plus proche dans votre fuseau horaire. Effacez pour utiliser le fuseau horaire du navigateur ou par défaut", + "use-time-ago": "Utiliser le format 'il y a' si possible", + "full-date-threshold-group": "Utiliser le format de date complet pour les dates antérieures à...", + "full-date-threshold-description": "Valeur numérique des unités de temps", + "full-date-threshold-unit-description": "Unité de temps (par exemple, heures ou années)" + }, + "placeholders": { + "full-date-threshold": "Entrez la valeur seuil", + "full-date-threshold-unit": "Sélectionnez l'unité seuil" + }, + "full-date-threshold-units": { + "Never": "Jamais", + "Seconds": "Secondes", + "Minutes": "Minutes", + "Hours": "Heures", + "Days": "Jours", + "Weeks": "Semaines", + "Months": "Mois", + "Quarters": "Trimestres", + "Years": "Années" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "Choisir le type de données d'exemple", + "size": "taille", + "version": "version" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "Initialisation des données d'exemple", + "starting-initialization": "Démarrage de l'initialisation des données d'exemple...", + "errors": "Erreurs", + "start": "Début", + "end": "Fin" + } + }, + "licensing": { + "license-absent": "Licence communautaire", + "license-present": "Licence {{type}}, expire le {{expirationDate | amParse | date}}", + "community": "Édition communautaire en cours d'exécution, cliquez pour demander une licence commerciale", + "expired": "Votre licence a expiré le {{expirationDate | amParse | date}}, veuillez la renouveler", + "purchase": "Acheter", + "renew": "Renouveler", + "expiration-date": "Date d'expiration" + }, + "password-expiry": { + "expire-days": "Pour protéger votre compte, vous devrez changer votre mot de passe dans {{count}} jours. ", + "expire-today": "Pour protéger votre compte, vous devrez changer votre mot de passe aujourd'hui. ", + "change-link": "Changer maintenant" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "Installation automatique des modules", + "loading": "Récupération des informations sur les modules...", + "finished": "Installation terminée. Cliquez sur Redémarrer pour continuer", + "start": "Début", + "end": "Fin" + } + } + }, + "widgets": { + "operations": { + "title": "Changements", + "blade-subtitle": "Historique des changements" + }, + "dynamicProperty": { + "title": "Propriétés dynamiques" + }, + "entitySettings": { + "title": "Paramètres" + }, + "accountApi": { + "title": "Clé API", + "blade-subtitle": "Clé API" + }, + "accountRoles": { + "title": "Rôles", + "blade-subtitle": "Gérer les rôles" + } + }, + "dialogs": { + "folders-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les dossiers ou fichiers sélectionnés ?" + }, + "properties-save": { + "title": "Enregistrer les modifications", + "message": "Les propriétés ont été modifiées. Voulez-vous enregistrer les changements ?" + }, + "notification-template-save": { + "title": "Enregistrer les modifications", + "message": "Le modèle de notification a été modifié. Voulez-vous enregistrer les changements ?" + }, + "role-save": { + "title": "Enregistrer les modifications", + "message": "Le rôle a été modifié. Voulez-vous enregistrer les changements ?" + }, + "roles-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les rôles sélectionnés ?" + }, + "account-save": { + "title": "Enregistrer les modifications", + "message": "Le compte a été modifié. Voulez-vous enregistrer les changements ?" + }, + "account-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les comptes sélectionnés ?" + }, + "oauthapps-save": { + "title": "Enregistrer les modifications", + "message": "L'application OAuth a été modifiée. Voulez-vous enregistrer les changements ?" + }, + "oauthapps-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer l'application OAuth sélectionnée ?" + }, + "dynamic-property-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer cette propriété dynamique ?" + }, + "settings-value-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les valeurs sélectionnées ?" + }, + "settings-save": { + "title": "Enregistrer les modifications", + "message": "Les paramètres ont été modifiés. Voulez-vous enregistrer les changements ?" + }, + "settings-delete": { + "title": "Confirmation de suppression", + "message": "Les paramètres ont été modifiés. Voulez-vous enregistrer les changements ?" + }, + "localizable-setting-value-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer les valeurs de dictionnaire sélectionnées ?" + }, + "localizable-setting-value-save": { + "title": "Enregistrer les modifications", + "message": "Cette valeur de dictionnaire a été modifiée. Voulez-vous enregistrer les changements ?" + }, + "email-sending-success": { + "title": "Envoi réussi", + "message": "L'email a été envoyé avec succès !" + }, + "email-send-error": { + "title": "Erreur d'envoi", + "message": "L'email n'a pas été envoyé ! Erreur : {{error}}" + }, + "dictionary-items-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer {{quantity}} élément(s) de dictionnaire sélectionné(s) ?" + }, + "module-action": { + "title-install": "Confirmation d'installation", + "title-update": "Confirmation de mise à jour", + "title-delete": "Confirmation de désinstallation", + "message0-install": "Vous êtes sur le point d'installer :", + "message0-update": "Vous êtes sur le point de mettre à jour :", + "message0-delete": "Vous êtes sur le point de désinstaller :", + "message1-install": "Les dépendances suivantes seront également installées :", + "message1-delete": "Les modules dépendants suivants seront également désinstallés :", + "message2-install": "Installer la sélection et les dépendances ?", + "message2-update": "Mettre à jour la sélection et les dépendances ?", + "message2-delete": "Désinstaller ce module et TOUS les modules dépendants ?" + }, + "module-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir désinstaller ce module ?" + }, + "api-key-delete": { + "title": "Confirmation de suppression", + "message": "Êtes-vous sûr de vouloir supprimer cette clé API ?" + }, + "app-restart": { + "title": "Arrêt de l'application", + "message": "Redémarrez l'application pour appliquer les changements. Selon votre service d'hébergement, l'application peut redémarrer automatiquement ou vous devrez peut-être le faire manuellement. Êtes-vous sûr de vouloir fermer l'application maintenant ?" + }, + "error-details": { + "title": "Détails de l'erreur" + }, + "impersonate-no-url": { + "title": "Connexion au nom de", + "message": "L'URL de la boutique n'a pas été ajoutée aux paramètres de la boutique. Veuillez contacter l'administrateur" + }, + "asset-upload-error": { + "title": "Erreur de téléchargement", + "message": "Choisissez un dossier ! Impossible de télécharger un fichier à la racine !" + }, + "run-import": { + "title": "Confirmation d'importation", + "message": "Êtes-vous sûr de vouloir importer les données d'exemple ?" + }, + "create-folder": { + "title": "Le nom d'un dossier doit respecter les règles de nommage suivantes :\n Le nom du dossier doit comporter entre 3 et 63 caractères.\n Le nom du dossier doit commencer par une lettre ou un chiffre et ne peut contenir que des lettres, des chiffres et des traits d'union (-).\n Chaque trait d'union (-) doit être immédiatement précédé et suivi d'une lettre ou d'un chiffre ; les traits d'union consécutifs ne sont pas autorisés.\n Toutes les lettres d'un nom de dossier doivent être en minuscules" + }, + "storefront-cache-reset-successfully": { + "title": "Réinitialisation du cache", + "message": "Le cache de l'application frontale a été réinitialisé avec succès" + } + }, + "commands": { + "login-on-behalf": "Se connecter au nom de", + "reset-storefront-cache": "Réinitialiser le cache" + } + }, + "permissions": { + "platform:asset:access": "Voir les ressources dans le menu principal", + "platform:asset:delete": "Supprimer les ressources de la plateforme", + "platform:asset:update": "Modifier les ressources de la plateforme", + "platform:asset:create": "Télécharger de nouvelles ressources de la plateforme", + "platform:asset:read": "Télécharger les ressources de la plateforme", + "platform:module:read": "Voir les détails du module", + "platform:module:access": "Voir les modules dans le menu principal", + "platform:module:manage": "Installer/désinstaller les modules", + "platform:setting:read": "Lire les paramètres de la plateforme", + "platform:setting:access": "Voir les paramètres dans le menu principal", + "platform:setting:update": "Modifier les paramètres de la plateforme", + "platform:dynamic_properties:read": "Voir les détails des propriétés dynamiques", + "platform:dynamic_properties:create": "Créer de nouvelles propriétés dynamiques", + "platform:dynamic_properties:access": "Voir les propriétés dynamiques dans le menu principal", + "platform:dynamic_properties:update": "Modifier les propriétés dynamiques", + "platform:dynamic_properties:delete": "Supprimer les propriétés dynamiques", + "platform:security:read": "Voir les détails des utilisateurs et des rôles", + "platform:security:create": "Créer de nouveaux utilisateurs et rôles", + "platform:security:access": "Voir la sécurité dans le menu principal", + "platform:security:update": "Modifier les utilisateurs et les rôles", + "platform:security:delete": "Supprimer les utilisateurs et les rôles", + "platform:security:verifyEmail": "Modifier l'état vérifié et envoyer un email de vérification", + "background_jobs:manage": "Accès à la console Hangfire", + "platform:exportImport:access": "Voir Exporter/Importer dans le menu principal", + "platform:import": "Importer les données de la plateforme et des modules", + "platform:export": "Exporter les données de la plateforme et des modules", + "platform:security:loginOnBehalf": "Se connecter au nom d'un client" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Langues", + "description": "Liste des langues disponibles" + } + } + }, + "ModulesAutoInstalled": { + "description": "L'indicateur indique que les modules sont automatiquement installés", + "title": "Modules installés" + }, + "ModulesAutoInstallState": { + "title": "Statut d'auto-installation des modules", + "description": "Statut actuel de l'assistant d'auto-installation des modules" + }, + "SetupStep": { + "title": "Étape de configuration actuelle", + "description": "Étape actuelle dans l'assistant de configuration" + }, + "SampleDataState": { + "title": "Statut des données d'exemple", + "description": "Statut actuel de l'assistant de données d'exemple" + }, + "SendDiagnosticData": { + "title": "Envoyer des données de diagnostic", + "description": "Envoyer les données de diagnostic de VC Platform à VC. Ne peut être désactivé qu'avec l'achat d'une licence" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Dictionnaire pour les types de compte possibles", + "title": "Types de compte" + }, + "DefaultAccountType": { + "title": "Type de compte par défaut", + "description": "Valeur par défaut pour le type de compte lors de la création d'un nouveau compte" + }, + "DefaultAccountStatus": { + "title": "Statut de compte par défaut", + "description": "Valeur par défaut pour le statut du compte lors de la création d'un nouveau compte" + }, + "DefaultExternalAccountStatus": { + "title": "Statut de compte externe par défaut", + "description": "Valeur par défaut pour le statut du compte lors de la création d'un nouveau compte pendant une connexion externe" + }, + "EnablePruneExpiredTokensJob": { + "description": "Active la suppression des jetons/autorisations expirés et invalides", + "title": "Supprimer les jetons expirés" + }, + "CronPruneExpiredTokensJob": { + "description": "Expression Cron pour la tâche de suppression des jetons/autorisations expirés et invalides", + "title": "Cron pour la tâche de suppression des jetons" + }, + "FileExtensionsBlackList": { + "description": "Extensions de fichiers interdites au téléchargement par la plateforme (en plus de 'FileExtensionsBlackList' dans appsettings.json)", + "title": "Liste noire" + }, + "FileExtensionsWhiteList": { + "description": "Extensions de fichiers autorisées au téléchargement par la plateforme (en plus de 'FileExtensionsWhiteList' dans appsettings.json)", + "title": "Liste blanche" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Statut persistant du menu principal", + "title": "Statut persistant du menu principal" + } + }, + "Language": { + "description": "Langue par défaut (code à deux lettres de ISO 639-1, insensible à la casse). Exemple : fr, en", + "title": "Langue" + }, + "RegionalFormat": { + "description": "Format régional par défaut (code de locale CLDR, avec tiret ou underscore comme délimiteur, insensible à la casse). Exemple : fr, fr_FR, sr_Cyrl, sr_Cyrl_RS", + "title": "Format régional" + }, + "TimeZone": { + "description": "Fuseau horaire par défaut (nom de fuseau horaire IANA [base de données tz], exactement comme dans la base de données, sensible à la casse). Exemples : Europe/Paris, America/New_York", + "title": "Fuseau horaire" + }, + "UseTimeAgo": { + "description": "Lorsque défini sur true (par défaut), le système affiche la date au format 'il y a quelques secondes' lorsque c'est possible", + "title": "Utiliser le format 'il y a' quand c'est possible" + }, + "FullDateThreshold": { + "description": "Le format 'il y a' passera à un format de date complet après un certain nombre d'unités de temps", + "title": "Seuil de date complète" + }, + "FullDateThresholdUnit": { + "description": "Unité du seuil de date complète", + "title": "Unité du seuil de date complète" + }, + "Customization": { + "description": "JSON contenant les paramètres de personnalisation de l'interface utilisateur du gestionnaire", + "title": "Personnalisation de l'interface utilisateur du gestionnaire" + }, + "ShowMeridian": { + "description": "Afficher l'indicateur de l'heure de méridien (AM ou PM)", + "title": "Afficher le méridien" + } + }, + "Cache": { + "Enabled": { + "description": "Ce paramètre vous permet d'activer et de désactiver globalement la mise en cache pour toute l'application de la plateforme", + "title": "Activer ou désactiver le cache globalement" + }, + "AbsoulteExpiration": { + "description": "Spécifie la durée maximale pendant laquelle les données mises en cache sont stockées dans le cache. Format : [-][j.]hh:mm:ss[.fffffff]", + "title": "Durée de vie globale des objets en cache" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Statuts de compte", + "description": "Modifier les statuts de compte" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Common.json new file mode 100644 index 00000000000..0b6eb8850cd --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "Aggiungi", + "activate": "Attiva", + "assign": "Assegna", + "cancel": "Annulla", + "clear": "Cancella", + "clear-all": "Cancella tutto", + "clone": "Clona", + "close": "Chiudi", + "confirm": "Conferma", + "copy-link": "Copia link", + "copy": "Copia", + "create": "Crea", + "cut": "Taglia", + "delete": "Elimina", + "add-all": "Aggiungi tutto", + "remove-all": "Elimina tutto", + "download": "Scarica", + "edit": "Modifica", + "export": "Esporta", + "generate": "Genera", + "import": "Importa", + "import-sample-data": "Importa dati di esempio", + "install": "Installa", + "manage": "Gestisci", + "more": "Altro", + "no": "No", + "new-folder": "Nuova cartella", + "new-license": "Rinnova licenza", + "ok": "OK", + "paste": "Incolla", + "pick-selected": "Seleziona selezionati", + "preview": "Anteprima", + "open-browser": "Apri nel browser", + "redo": "Ripeti", + "refresh": "Aggiorna", + "remove": "Rimuovi", + "reset": "Reimposta", + "restart": "Riavvia", + "save": "Salva", + "send": "Invia", + "select-all": "Seleziona tutto", + "set-to-default": "Imposta predefinito", + "start-export": "Avvia esportazione", + "settings": "Impostazioni", + "sign-out": "Esci", + "undo": "Annulla", + "uninstall": "Disinstalla", + "unselect-all": "Deseleziona tutto", + "update": "Aggiorna", + "upload": "Carica", + "yes": "Sì", + "add-new-property": "Aggiungi nuova proprietà", + "manage-type-properties": "Tipi di proprietà", + "manage-profile": "Gestisci profilo", + "minimize": "Minimizza", + "maximize": "Massimizza", + "stop-sending": "Interrompi invio", + "set-active": "Imposta attivo", + "reject-user": "Rifiuta utente", + "change-password": "Cambia password", + "unlock-account": "Sblocca account", + "lock-account": "Blocca account", + "today": "Oggi", + "time": "Ora", + "now": "Adesso", + "date": "Data", + "see-details": "Visualizza dettagli", + "dismiss": "Chiudi", + "hide-empty-property-values": "Nascondi valori vuoti", + "show-empty-property-values": "Mostra valori vuoti", + "titles": { + "refresh": "Aggiorna", + "new-folder": "Nuova cartella", + "upload": "Carica" + } + }, + "list": { + "no-data": "Nessun dato", + "count": "Conteggio", + "loading": "Caricamento...", + "item-not-found": "Errore: Non trovato" + }, + "placeholders": { + "n-a": "N/D", + "no-file": "Scegli file", + "search-keyword": "Cerca parola chiave...", + "select-value": "Seleziona valore", + "select-values": "Seleziona valori" + }, + "dialogs": { + "delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare le voci selezionate?" + } + }, + "properties": { + "short-text": { + "title": "Testo breve", + "description": "Valori di testo sotto i 1024 caratteri" + }, + "long-text": { + "title": "Testo lungo", + "description": "Testo illimitato senza restrizioni di dimensione" + }, + "integer": { + "title": "Intero", + "description": "Numero intero" + }, + "decimal": { + "title": "Numero decimale", + "description": "Numero decimale con precisione di 18 e scala di 4" + }, + "date-time": { + "title": "Data e ora", + "description": "Seleziona data" + }, + "boolean": { + "title": "Booleano", + "description": "Tipo interruttore" + }, + "html": { + "title": "HTML", + "description": "Markup HTML" + }, + "undefined": { + "title": "Non definito" + }, + "image": { + "title": "Immagine", + "description": "Tipo immagine" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "Inserisci testo breve", + "secure-string": "Inserisci testo segreto", + "email": "Inserisci email", + "url": "Inserisci URL", + "long-text": "Inserisci testo lungo", + "integer": "Inserisci numero intero", + "number": "Inserisci numero decimale", + "date-time": "Scegli data", + "short-text-multivalue": "Aggiungi valore", + "integer-multivalue": "Aggiungi intero", + "number-multivalue": "Aggiungi decimale", + "short-text-dictionary": "Seleziona valore", + "short-text-dictionary-multivalue": "Seleziona valore", + "short-text-multilang": "Inserisci valore", + "long-text-multilang": "Inserisci valore", + "short-text-multivalue-multilang": "Aggiungi valore", + "short-text-dictionary-multilang": "Seleziona valore", + "short-text-dictionary-multivalue-multilang": "Seleziona valore", + "long-text-dictionary-multivalue-multilang": "Seleziona valore" + } + }, + "short-text-input": { + "placeholder": "Inserisci valore", + "required": "Questo campo è obbligatorio", + "maxLength": "Questo campo non deve contenere più di {{number}} caratteri" + }, + "validators": { + "uriWithoutQuery": { + "error": "Formato URI non valido. Assicurati che l'URI non abbia parametri di query" + } + }, + "errors": { + "generic-error": "Errore", + "400": "Richiesta non valida", + "401": "Non autorizzato", + "403": "Vietato", + "404": "Non trovato", + "405": "Metodo non consentito", + "406": "Non accettabile", + "407": "Autenticazione proxy richiesta", + "408": "Timeout della richiesta", + "409": "Conflitto", + "429": "Troppe richieste", + "500": "Errore interno del server", + "501": "Non implementato", + "502": "Gateway non valido", + "503": "Servizio non disponibile", + "504": "Timeout del gateway" + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..b1411ee0498 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "Afghanistan", + "EGY": "Egitto", + "ALA": "Åland", + "ALB": "Albania", + "DZA": "Algeria", + "ASM": "Samoa Americane", + "VIR": "Isole Vergini Americane", + "AND": "Andorra", + "AGO": "Angola", + "AIA": "Anguilla", + "ATA": "Antartide (status speciale per il Trattato Antartico)", + "ATG": "Antigua e Barbuda", + "GNQ": "Guinea Equatoriale", + "ARG": "Argentina", + "ARM": "Armenia", + "ABW": "Aruba", + "AZE": "Azerbaigian", + "ETH": "Etiopia", + "AUS": "Australia", + "BHS": "Bahamas", + "BHR": "Bahrein", + "BGD": "Bangladesh", + "BRB": "Barbados", + "BLR": "Bielorussia", + "BEL": "Belgio", + "BLZ": "Belize", + "BEN": "Benin", + "BMU": "Bermuda", + "BTN": "Bhutan", + "BOL": "Bolivia", + "BES": "Bonaire, Sint Eustatius e Saba", + "BIH": "Bosnia ed Erzegovina", + "BWA": "Botswana", + "BVT": "Isola Bouvet", + "BRA": "Brasile", + "VGB": "Isole Vergini Britanniche", + "IOT": "Territorio Britannico dell'Oceano Indiano", + "BRN": "Brunei", + "BGR": "Bulgaria", + "BFA": "Burkina Faso", + "BDI": "Burundi", + "CHL": "Cile", + "CHN": "Repubblica Popolare Cinese", + "COK": "Isole Cook", + "CRI": "Costa Rica", + "CUW": "Curaçao", + "DNK": "Danimarca", + "DEU": "Germania", + "DMA": "Dominica", + "DOM": "Repubblica Dominicana", + "DJI": "Gibuti", + "ECU": "Ecuador", + "CIV": "Costa d'Avorio", + "SLV": "El Salvador", + "ERI": "Eritrea", + "EST": "Estonia", + "SWZ": "Eswatini", + "FLK": "Isole Falkland", + "FRO": "Isole Fær Øer", + "FJI": "Figi", + "FIN": "Finlandia", + "FRA": "Francia", + "GUF": "Guyana Francese", + "PYF": "Polinesia Francese", + "ATF": "Terre Australi e Antartiche Francesi", + "GAB": "Gabon", + "GMB": "Gambia", + "GEO": "Georgia", + "GHA": "Ghana", + "GIB": "Gibilterra", + "GRD": "Grenada", + "GRC": "Grecia", + "GRL": "Groenlandia", + "GLP": "Guadalupa", + "GUM": "Guam", + "GTM": "Guatemala", + "GGY": "Guernsey", + "GIN": "Guinea", + "GNB": "Guinea-Bissau", + "GUY": "Guyana", + "HTI": "Haiti", + "HMD": "Isole Heard e McDonald", + "HND": "Honduras", + "HKG": "Hong Kong", + "IND": "India", + "IDN": "Indonesia", + "IMN": "Isola di Man", + "IRQ": "Iraq", + "IRN": "Iran", + "IRL": "Irlanda", + "ISL": "Islanda", + "ISR": "Israele", + "ITA": "Italia", + "JAM": "Giamaica", + "JPN": "Giappone", + "YEM": "Yemen", + "JEY": "Jersey", + "JOR": "Giordania", + "CYM": "Isole Cayman", + "KHM": "Cambogia", + "CMR": "Camerun", + "CAN": "Canada", + "CPV": "Capo Verde", + "KAZ": "Kazakistan", + "QAT": "Qatar", + "KEN": "Kenya", + "KGZ": "Kirghizistan", + "KIR": "Kiribati", + "CCK": "Isole Cocos (Keeling)", + "COL": "Colombia", + "COM": "Comore", + "COD": "Repubblica Democratica del Congo", + "COG": "Repubblica del Congo", + "PRK": "Corea del Nord", + "KOR": "Corea del Sud", + "HRV": "Croazia", + "CUB": "Cuba", + "KWT": "Kuwait", + "LAO": "Laos", + "LSO": "Lesotho", + "LVA": "Lettonia", + "LBN": "Libano", + "LBR": "Liberia", + "LBY": "Libia", + "LIE": "Liechtenstein", + "LTU": "Lituania", + "LUX": "Lussemburgo", + "MAC": "Macao", + "MDG": "Madagascar", + "MWI": "Malawi", + "MYS": "Malesia", + "MDV": "Maldive", + "MLI": "Mali", + "MLT": "Malta", + "MAR": "Marocco", + "MHL": "Isole Marshall", + "MTQ": "Martinica", + "MRT": "Mauritania", + "MUS": "Mauritius", + "MYT": "Mayotte", + "MEX": "Messico", + "FSM": "Micronesia", + "MDA": "Moldavia", + "MCO": "Monaco", + "MNG": "Mongolia", + "MNE": "Montenegro", + "MSR": "Montserrat", + "MOZ": "Mozambico", + "MMR": "Myanmar", + "NAM": "Namibia", + "NRU": "Nauru", + "NPL": "Nepal", + "NCL": "Nuova Caledonia", + "NZL": "Nuova Zelanda", + "NIC": "Nicaragua", + "NLD": "Paesi Bassi", + "NER": "Niger", + "NGA": "Nigeria", + "NIU": "Niue", + "MNP": "Isole Marianne Settentrionali", + "MKD": "Macedonia del Nord", + "NFK": "Isola Norfolk", + "NOR": "Norvegia", + "OMN": "Oman", + "AUT": "Austria", + "TLS": "Timor Est", + "PAK": "Pakistan", + "PSE": "Palestina", + "PLW": "Palau", + "PAN": "Panama", + "PNG": "Papua Nuova Guinea", + "PRY": "Paraguay", + "PER": "Perù", + "PHL": "Filippine", + "PCN": "Isole Pitcairn", + "POL": "Polonia", + "PRT": "Portogallo", + "PRI": "Porto Rico", + "REU": "Riunione", + "RWA": "Ruanda", + "ROU": "Romania", + "RUS": "Russia", + "SLB": "Isole Salomone", + "BLM": "Saint-Barthélemy", + "MAF": "Saint-Martin (parte francese)", + "ZMB": "Zambia", + "WSM": "Samoa", + "SMR": "San Marino", + "STP": "São Tomé e Príncipe", + "SAU": "Arabia Saudita", + "SWE": "Svezia", + "CHE": "Svizzera", + "SEN": "Senegal", + "SRB": "Serbia", + "SYC": "Seychelles", + "SLE": "Sierra Leone", + "ZWE": "Zimbabwe", + "SGP": "Singapore", + "SXM": "Sint Maarten (parte olandese)", + "SVK": "Slovacchia", + "SVN": "Slovenia", + "SOM": "Somalia", + "ESP": "Spagna", + "LKA": "Sri Lanka", + "SHN": "Sant'Elena, Ascensione e Tristan da Cunha", + "KNA": "Saint Kitts e Nevis", + "LCA": "Santa Lucia", + "SPM": "Saint-Pierre e Miquelon", + "VCT": "Saint Vincent e Grenadine", + "ZAF": "Sudafrica", + "SDN": "Sudan", + "SGS": "Georgia del Sud e Isole Sandwich Australi", + "SSD": "Sud Sudan", + "SUR": "Suriname", + "SJM": "Svalbard e Jan Mayen", + "SYR": "Siria", + "TJK": "Tagikistan", + "TWN": "Taiwan", + "TZA": "Tanzania", + "THA": "Thailandia", + "TGO": "Togo", + "TKL": "Tokelau", + "TON": "Tonga", + "TTO": "Trinidad e Tobago", + "TCD": "Ciad", + "CZE": "Repubblica Ceca", + "TUN": "Tunisia", + "TUR": "Turchia", + "TKM": "Turkmenistan", + "TCA": "Isole Turks e Caicos", + "TUV": "Tuvalu", + "UGA": "Uganda", + "UKR": "Ucraina", + "HUN": "Ungheria", + "UMI": "Isole minori esterne degli Stati Uniti", + "URY": "Uruguay", + "UZB": "Uzbekistan", + "VUT": "Vanuatu", + "VAT": "Città del Vaticano", + "VEN": "Venezuela", + "ARE": "Emirati Arabi Uniti", + "USA": "Stati Uniti d'America", + "GBR": "Regno Unito", + "VNM": "Vietnam", + "WLF": "Wallis e Futuna", + "CXR": "Isola di Natale", + "ESH": "Sahara Occidentale", + "CAF": "Repubblica Centrafricana", + "CYP": "Cipro" + }, + "CAN": { + "AB": "Alberta", + "BC": "Columbia Britannica", + "MB": "Manitoba", + "NB": "Nuovo Brunswick", + "NL": "Terranova e Labrador", + "NT": "Territori del Nord-Ovest", + "NS": "Nuova Scozia", + "NU": "Nunavut", + "ON": "Ontario", + "PE": "Isola del Principe Edoardo", + "QC": "Quebec", + "SK": "Saskatchewan", + "YT": "Yukon" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..0911ec0539b --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/it.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "Home", + "browse": "Sfoglia", + "configuration": "Configurazione", + "notifications": "Notifiche", + "more": "Altro", + "settings": "Impostazioni", + "dynamic-properties": "Proprietà dinamiche", + "security": "Sicurezza", + "modules": "Moduli", + "export-import": "Esporta & Importa", + "user-profile": "Profilo utente", + "assets": "Risorse", + "toggle-favorites": "Shift + Spazio per attivare/disattivare i preferiti", + "help": "Aiuto" + }, + "navigation": { + "back": "Indietro" + }, + "blades": { + "system-info": { + "title": "Informazioni sulla piattaforma", + "labels": { + "clr-version": "Versione CLR", + "environment-name": "Modalità ambiente", + "is-64-bit-os": "Sistema operativo a 64 bit", + "is-64-bit-process": "Processo a 64 bit", + "database-provider": "Provider del database" + } + }, + "asset-list": { + "title": "Gestione risorse", + "bread-crumb-top": "Tutte le risorse", + "labels": { + "picture": "Immagine", + "name": "Nome", + "size": "Dimensione", + "modified": "Modificato", + "actions": "Azioni", + "group": "Gruppo", + "language": "Lingua" + } + }, + "asset-upload": { + "title": "Caricamento risorsa", + "labels": { + "select-files": "Seleziona file", + "drag-note": "Trascina e rilascia i file qui", + "progress": "Progresso", + "asset-uploaded": "Risorsa/e caricata/e" + }, + "placeholders": { + "image-url": "Incolla l'URL del file qui" + } + }, + "operation-list": { + "labels": { + "login": "Accesso", + "details": "Dettagli", + "time": "Ora" + } + }, + "dynamicObject-list": { + "title": "Tipi di oggetti dinamici", + "subtitle": "Scegli il tipo di oggetto per gestire le proprietà dinamiche", + "labels": { + "no-objects": "Nessun oggetto supporta ancora le proprietà dinamiche" + } + }, + "dynamicProperty-detail": { + "title": "Gestisci proprietà", + "subtitle": "Gestisci proprietà", + "subtitle-new": "Nuova proprietà", + "labels": { + "property-name": "Nome proprietà", + "required": "Obbligatorio", + "multivalue": "Multivalore", + "multilingual": "Multilingua", + "dictionary": "Dizionario", + "description": "Descrizione", + "display-order": "Ordine di visualizzazione", + "display-name": "Nome visualizzato", + "value-type": "Tipo di valore", + "dictionary-values": "Valori del dizionario", + "manage-dictionary": "Gestisci dizionario" + }, + "placeholders": { + "description": "Inserisci la descrizione della proprietà", + "display-name": "Inserisci il nome visualizzato...", + "display-order": "Ordine di visualizzazione" + }, + "validations": { + "multivalue": "La proprietà multivalore può avere solo tipo di valore Testo breve, Intero o Decimale", + "multilingual": "Solo il valore di testo o HTML può essere multilingua", + "dictionary": "Sono supportati solo dizionari del tipo di valore Testo breve" + } + }, + "dynamicProperty-list": { + "subtitle": "Gestisci proprietà dinamiche", + "labels": { + "no-properties": "Nessuna proprietà dinamica ancora" + } + }, + "notifications-menu": { + "subtitle": "Lavorare con il sistema di notifiche" + }, + "property-dictionary": { + "title": "Valori del dizionario", + "subtitle": "Gestisci valori del dizionario", + "labels": { + "edit-value": "Modifica valore", + "new-value": "Nuovo valore", + "dictionary-name": "Nome voce dizionario", + "localized-values": "Valori localizzati", + "current-values": "Valori attuali", + "name": "Nome", + "values": "Valori" + }, + "validations": { + "dictionary-name-required": "Obbligatorio", + "dictionary-name": "Trovato nome duplicato", + "localized-values-required": "Obbligatorio", + "localized-values": "Trovato nome duplicato", + "dictionary": "Sono supportati solo dizionari del tipo di valore Testo breve" + }, + "placeholders": { + "dictionary-name": "Inserisci nome", + "localized-values": "Inserisci valore" + } + }, + "propertyValue-list": { + "title": "Proprietà dinamiche", + "subtitle": "", + "labels": { + "header": "Valori delle proprietà", + "no-properties": "Questa entità non ha ancora proprietà dinamiche. Clicca su 'Tipi di proprietà' e crea alcune proprietà. Chiudi e riapri la vista dell'entità corrente per caricare le proprietà dinamiche" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Obbligatorio" + }, + "labels": { + "new-value": "Nuovo valore", + "current-values": "Valori attuali", + "values": "Valori" + }, + "placeholders": { + "value": "Inserisci valore" + } + }, + "export-main": { + "title": "Esportazione dati", + "labels": { + "platform-entries": "Voci della piattaforma", + "choose-modules": "Scegli i moduli da esportare", + "download-url": "URL di download", + "errors": "Errori", + "start": "Inizio", + "end": "Fine" + }, + "menu": { + "security": { + "title": "Sicurezza", + "description": "Account e ruoli" + }, + "binary": { + "title": "Binario", + "description": "Dati binari" + }, + "settings": { + "title": "Impostazioni", + "description": "Impostazioni della piattaforma" + }, + "dynamic-props": { + "title": "Proprietà dinamiche", + "description": "Proprietà dinamiche della piattaforma" + } + } + }, + "import-main": { + "title": "Importazione dati", + "labels": { + "start-import": "Avvia importazione", + "select-file": "Seleziona il file .zip da importare. Il file deve essere prodotto dall'esportazione dati di Commerce Manager", + "drag-note": "Trascina e rilascia il file .zip da importare. Il file deve essere prodotto dall'esportazione dati di Commerce Manager", + "upload-failed": "Caricamento fallito", + "upload-progress": "Progresso del caricamento", + "import-progress": "Progresso dell'importazione", + "import-finished": "Importazione completata", + "import-data-information": "Informazioni sui dati importati", + "author": "Autore", + "data-file-created": "File dati creato", + "created-platform-version": "Creato nella versione della piattaforma", + "platform-entries": "Voci della piattaforma", + "choose-modules": "Scegli i moduli da importare", + "no-data": "Nessun dato", + "errors": "Errori", + "start": "Inizio", + "end": "Fine" + }, + "menu": { + "security": { + "title": "Sicurezza", + "description": "Account e ruoli" + }, + "binary": { + "title": "Binario", + "description": "Dati binari" + }, + "settings": { + "title": "Impostazioni", + "description": "Impostazioni della piattaforma" + }, + "dynamic-props": { + "title": "Proprietà dinamiche", + "description": "Proprietà dinamiche della piattaforma" + } + } + }, + "exportImport-main": { + "title": "Esportazione e importazione dati", + "menu": { + "export": { + "title": "Esporta", + "description": "I dati saranno salvati in un file per poter essere importati successivamente" + }, + "import": { + "title": "Importa", + "description": "Importa dati da un file esportato" + } + } + }, + "resolve-result": { + "title": "Anteprima risultato", + "labels": { + "subject": "Oggetto", + "body": "Corpo" + } + }, + "module-settings-detail": { + "title": "Impostazioni del modulo" + }, + "module-wizard-progress-step": { + "title-install": "Installazione modulo", + "title-update": "Aggiornamento modulo", + "title-uninstall": "Disinstallazione modulo", + "labels": { + "start": "Inizio", + "end": "Fine", + "progress-messages": "Messaggi di avanzamento", + "process-completed": "Processo di installazione del modulo completato", + "restart-application": "Riavvia l'applicazione ora o più tardi" + } + }, + "module-detail": { + "title": "Informazioni sul modulo", + "labels": { + "i-accept-the": "Accetto la", + "license-link": "licenza", + "license": "Licenza", + "agreement": "accordo", + "install-from-file": "Installa / aggiorna modulo da file", + "select-module-file": "Carica un file modulo (.zip) da una fonte esterna al di fuori del repository centrale dei moduli", + "upload-progress": "Progresso del caricamento", + "module-info": "Informazioni sul modulo", + "title": "Titolo", + "official": "Modulo ufficiale di {{$owner}}", + "owners": "Sviluppato da {{$owner}}", + "author": "Autore", + "authors": "Autori", + "id": "ID", + "version": "Versione", + "project-information": "Informazioni sul progetto", + "description": "Descrizione", + "platform-version": "Versione della piattaforma", + "dependencies": "Dipendenze", + "optional-dependencies": "Dipendenze opzionali", + "tags": "Tag", + "install-version": "Installa versione", + "errors": "Errori" + } + }, + "modules-main": { + "title": "Moduli", + "labels": { + "updates": "Aggiornamenti", + "available": "Disponibili", + "installed": "Installati", + "withErrors": "Errori", + "advanced": "Avanzate" + } + }, + "modules-list": { + "subtitle": "Gestione moduli", + "labels": { + "grouping": "Mostra pacchetti di moduli", + "ungrouped": "Altri", + "no-updates": "Nessun aggiornamento trovato", + "no-modules-part1": "Nessun nuovo modulo da installare", + "no-installed-modules": "Nessun modulo installato trovato", + "icon": "Icona", + "up-to-date": "Il modulo è aggiornato", + "update-available": "Aggiornamento disponibile per questo modulo", + "module": "Modulo", + "version": "Versione", + "author": "Autore", + "installed": "Moduli installati", + "manual-install-warning": "Attenzione! I moduli installati manualmente non si avvieranno perché RefreshProbingFolderOnStart è impostato su false" + } + }, + "history": { + "title": "Eventi di sistema", + "subtitle": "Cronologia eventi", + "labels": { + "type": "Tipo", + "title": "Titolo", + "created": "Creato", + "description": "Descrizione" + } + }, + "historyDetailDefault": { + "title": "Dettaglio evento", + "subtitle": "Dettaglio evento", + "labels": { + "start": "Inizio", + "end": "Fine", + "elapsed": "Trascorso", + "errors": "Errori", + "stats": "Elaborati {{ processedCount }} di {{ totalCount }} record" + } + }, + "menuHeader": { + "labels": { + "history": "Cronologia", + "clear-recent": "Cancella tutti i recenti" + } + }, + "account-changePassword": { + "labels": { + "title": "Inserisci una nuova password", + "login": "Accesso", + "force-change-info": "La tua password è scaduta. Devi cambiare la password per continuare a utilizzare il gestore", + "current-password": "Password attuale", + "new-password": "Nuova password", + "repeat-password": "Ripeti nuova password", + "cancel": "Annulla", + "save": "Cambia", + "fail": "Spiacenti, non è stato possibile reimpostare la password per questo utente" + }, + "validations": { + "current-password": "Obbligatorio", + "new-password": "La vecchia e la nuova password sono uguali!", + "repeat-password": "Le nuove password non corrispondono!" + }, + "placeholders": { + "current-password": "Inserisci la password attuale", + "new-password": "Inserisci la nuova password", + "repeat-password": "Ripeti la nuova password" + } + }, + "account-resetPassword": { + "subtitle": "Cambia password utente", + "labels": { + "new-password": "Nuova password", + "repeat-password": "Ripeti password", + "force-password-change": "Fai cambiare la password a questo utente al prossimo accesso" + }, + "validations": { + "repeat-password": "Le nuove password non corrispondono!", + "invalid-token": "Il token di reimpostazione password non è valido o è scaduto", + "password-too-weak": "La nuova password non rispetta una o più politiche di sicurezza della password:", + "passwordTooShort": "Le password devono essere lunghe {{parameter}} caratteri o più", + "passwordRequiresUniqueChars": "Le password devono utilizzare almeno {{parameter}} caratteri diversi", + "passwordRequiresLower": "Le password devono avere almeno una lettera minuscola ('a'-'z')", + "passwordRequiresUpper": "Le password devono avere almeno una lettera maiuscola ('A'-'Z')", + "passwordRequiresDigit": "Le password devono avere almeno una cifra ('0'-'9')", + "passwordRequiresNonAlphanumeric": "Le password devono avere almeno un carattere non alfanumerico", + "recentPasswordUsed": "Hai già usato questa password in passato. Scegline un'altra" + }, + "placeholders": { + "new-password": "Inserisci la nuova password", + "repeat-password": "Ripeti la nuova password" + } + }, + "account-detail": { + "title-new": "Nuovo account", + "labels": { + "user-information": "Informazioni utente", + "is-administrator": "È amministratore", + "account-type": "Tipo di account", + "login": "Login", + "account-state": "Stato account", + "account-email": "Email", + "locked-state": "Stato di blocco", + "status": "Stato", + "verified": "Verificato", + "resend-link": "Reinvia link", + "link-sent": "Il link è stato inviato", + "last-login-date": "Data ultimo accesso" + }, + "placeholders": { + "account-type": "Seleziona ...", + "email": "Inserisci email", + "user-name": "Inserisci nome utente", + "status": "Seleziona ..." + } + }, + "account-list": { + "title": "Utenti", + "subtitle": "Servizio di sicurezza", + "labels": { + "name": "Nome", + "account-type": "Tipo di account", + "login": "Login", + "state": "Stato", + "status": "Stato" + } + }, + "account-api": { + "labels": { + "api-key": "Chiave API", + "is-active": "è attiva" + }, + "placeholders": { + "api-key": "Inserisci chiave API" + } + }, + "role-detail": { + "subtitle": "Dettagli ruolo", + "labels": { + "summary": "Riepilogo", + "name": "Nome", + "description": "Descrizione", + "assigned-permissions": "Permessi assegnati", + "permission-name": "Nome", + "assigned-scopes": "Ambiti assegnati", + "no-permissions-assigned": "Nessun permesso assegnato" + }, + "placeholders": { + "name": "Inserisci nome", + "description": "Inserisci descrizione" + } + }, + "account-roles": { + "subtitle": "Assegna ruoli", + "labels": { + "select-roles": "Seleziona ruoli da assegnare", + "no-roles": "Nessun ruolo da assegnare" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "Ruoli assegnati", + "no-assigned": "Nessun ruolo assegnato" + } + }, + "permission-scopes": { + "subtitle": "Configura ambiti di permesso", + "labels": { + "select-bounded-scopes": "Seleziona ambiti limitati", + "selected": "Selezionato", + "scope-name": "Nome e parametri dell'ambito", + "no-scopes": "Nessun ambito" + } + }, + "role-permissions": { + "subtitle": "Assegna permessi", + "labels": { + "select-permissions": "Seleziona permessi da assegnare" + } + }, + "new-role-wizard": { + "title": "Nuovo ruolo", + "labels": { + "summary": "Riepilogo", + "name": "Nome", + "description": "Descrizione", + "assign-permissions": "Assegna permessi" + }, + "placeholders": { + "name": "Inserisci nome", + "description": "Inserisci descrizione" + } + }, + "role-list": { + "title": "Ruoli", + "subtitle": "Servizio di sicurezza", + "labels": { + "name": "Nome" + } + }, + "oauthapps": { + "labels": { + "clientId": "ID cliente", + "displayName": "Nome visualizzato", + "type": "Tipo", + "clientSecret": "Segreto cliente", + "assigned-permissions": "Permessi assegnati", + "redirectUris": "URI di reindirizzamento", + "postLogoutRedirectUris": "URI di reindirizzamento post-logout" + }, + "placeholders": { + "clientId": "Inserisci ID cliente", + "displayName": "Inserisci nome visualizzato", + "type": "Inserisci tipo", + "clientSecret": "Inserisci segreto cliente" + } + }, + "oauthapps-list": { + "title": "Applicazioni OAuth", + "subtitle": "Servizio di sicurezza" + }, + "oauthapps-detail": { + "title": "Modifica applicazione OAuth", + "title-new": "Crea applicazione OAuth", + "subtitle": "Servizio di sicurezza", + "labels": { + "clientSecret-warning": "Attenzione! Devi copiare il segreto ora. Sarà nascosto dopo la chiusura del pannello", + "urls": "URL" + }, + "blades": { + "edit-redirectUris": { + "title": "URI di reindirizzamento", + "subtitle": "Gestisci URI di reindirizzamento" + }, + "edit-postLogoutRedirectUris": { + "title": "URI di reindirizzamento post-logout", + "subtitle": "Gestisci URI di reindirizzamento post-logout" + } + } + }, + "login": { + "labels": { + "sign-in": "Accedi al Gestore {{title}}", + "login": "Login", + "password": "Password", + "remember-me": "Ricordami", + "external-sign-in": "Accedi con {{displayName}}", + "forgot-password": "Hai dimenticato la password?", + "log-in": "Accedi", + "log-in-placeholder": "Inserisci la tua email o nome utente", + "password-placeholder": "Inserisci la tua password", + "azure-log-in-label": "Accedi al sito di amministrazione tramite Azure", + "password-log-in-type": "Utente di sistema", + "or": "oppure", + "signing-in": "Accesso in corso..." + } + }, + "forgotpassword": { + "title": "Hai dimenticato la password?", + "labels": { + "login": "Login o email", + "description": "Ti invieremo un'email con le istruzioni su come reimpostare la tua password", + "success": "Un'email con le istruzioni ti è stata inviata", + "fail": "Spiacenti, non è stato possibile reimpostare la password per questo utente", + "back": "Indietro", + "submit": "Invia", + "time-limit": "Puoi riprovare tra {{countdown}}", + "time-limit-end": "Puoi riprovare ora" + }, + "placeholders": { + "login-or-email": "Inserisci login o email" + } + }, + "access-denied": { + "title": "Accesso negato", + "labels": { + "message": "Non hai accesso a questa risorsa. Contatta il tuo amministratore", + "button": "Accedi con altre credenziali" + } + }, + "resetpassword": { + "title": "Reimpostazione password", + "labels": { + "success": "La tua password è stata reimpostata", + "fail": "Spiacenti, non è stato possibile reimpostare la password per questo utente", + "submit": "Reimposta", + "log-in": "Accedi" + } + }, + "license": { + "title": "Licenza attuale", + "title-new": "Attivazione nuova licenza", + "license-info": "Informazioni sulla licenza", + "license-activation": "Attivazione licenza", + "labels": { + "info-running-no-license": "Questa istanza di Virto Commerce sta funzionando con", + "info-open-source-license": "Licenza Open Source Community", + "info0": "Acquisizione o rinnovo della licenza:", + "info1": "Invia il ", + "info2": "Elaboreremo la tua richiesta e ti contatteremo presto", + "info3": "Una volta ricevuto il \"Codice di Attivazione\" e/o il file di Licenza, compila uno dei campi di attivazione sottostanti", + "info4": "Il sistema mostrerà le nuove informazioni sulla licenza. Revisionale e clicca su \"Attiva\" per confermare", + "customer": "Licenza rilasciata a", + "type": "Tipo", + "expiration": "Scadenza", + "email": "Email del cliente", + "request-license": "Modulo di richiesta licenza", + "code-descr": "Inserisci il \"Codice di Attivazione\" della licenza ricevuto e premi [Invio]. Questo è il metodo di attivazione della licenza più rapido. (Richiede connessione internet)", + "file-descr": "In alternativa, fornisci il file di Licenza ricevuto. (Attivazione offline)", + "upload-progress": "Progresso del caricamento", + "errors": "Errore di attivazione" + }, + "placeholders": { + "code": "Inserisci il codice di attivazione" + } + }, + "new-account-wizard": { + "labels": { + "login": "Login", + "email": "Email", + "password": "Password", + "repeat-password": "Ripeti password", + "assign-roles": "Assegna ruoli" + }, + "placeholders": { + "email": "Inserisci email", + "login": "Inserisci login", + "password": "Inserisci nuova password", + "repeat-password": "Ripeti nuova password" + }, + "validations": { + "repeat-password": "Le password inserite non corrispondono!", + "password-too-weak": "La password inserita non rispetta una o più politiche di sicurezza della password:" + } + }, + "security-main": { + "title": "Sicurezza", + "subtitle": "Gestione utenti" + }, + "entitySetting-list": { + "title": "Impostazioni" + }, + "setting-dictionary": { + "subtitle": "Gestisci valori del dizionario", + "labels": { + "new-value": "Inserisci il valore", + "current-values": "Valori attuali", + "value": "Valore" + }, + "validations": { + "new-value-required": "Obbligatorio", + "new-value": "Valore duplicato trovato" + }, + "placeholders": { + "new-value": "Inserisci il valore" + } + }, + "settings-detail": { + "title": "Valori delle impostazioni", + "hide-description": "Nascondi" + }, + "settingGroup-list": { + "title": "Impostazioni", + "bread-crumb-top": "Tutte le impostazioni" + }, + "settings-uploader": { + "drag-drop-comment": "Trascina e rilascia il file qui", + "or": "oppure", + "browse-your-files": "sfoglia i tuoi file" + }, + "localizable-setting-value-list": { + "subtitle": "Gestisci valori del dizionario" + }, + "localizable-setting-value-details": { + "title": "Modifica valore del dizionario", + "alias": "Valore di sistema" + }, + "user-profile": { + "title": "Profilo utente", + "labels": { + "language": "Lingua", + "language-description": "Lingua di visualizzazione. Lascia vuoto per usare la lingua del browser o quella predefinita", + "regional-format": "Formato regionale", + "regional-format-description": "Formato regionale di numeri, valuta, data e ora. Lascia vuoto per usare il formato del browser o quello predefinito", + "time-zone": "Fuso orario", + "time-zone-description": "Fuso orario attuale dell'utente in formato IANA (database tz). Seleziona la città più vicina nel tuo fuso orario. Lascia vuoto per usare il fuso orario del browser o quello predefinito", + "use-time-ago": "Usa il formato 'tempo fa' se possibile", + "full-date-threshold-group": "Usa il formato data completo per date precedenti a...", + "full-date-threshold-description": "Valore numerico delle unità di tempo", + "full-date-threshold-unit-description": "Unità di tempo (es. ore o anni)" + }, + "placeholders": { + "full-date-threshold": "Inserisci il valore soglia", + "full-date-threshold-unit": "Seleziona l'unità soglia" + }, + "full-date-threshold-units": { + "Never": "Mai", + "Seconds": "Secondi", + "Minutes": "Minuti", + "Hours": "Ore", + "Days": "Giorni", + "Weeks": "Settimane", + "Months": "Mesi", + "Quarters": "Trimestri", + "Years": "Anni" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "Scegli il tipo di dati di esempio", + "size": "dimensione", + "version": "versione" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "Inizializzazione dati di esempio", + "starting-initialization": "Avvio dell'inizializzazione dei dati di esempio...", + "errors": "Errori", + "start": "Inizio", + "end": "Fine" + } + }, + "licensing": { + "license-absent": "Licenza Community", + "license-present": "Licenza {{type}}, scade il {{expirationDate | amParse | date}}", + "community": "Esecuzione dell'edizione community, clicca per richiedere una licenza commerciale", + "expired": "La tua licenza è scaduta il {{expirationDate | amParse | date}}, per favore rinnovala", + "purchase": "Acquista", + "renew": "Rinnova", + "expiration-date": "Data di scadenza" + }, + "password-expiry": { + "expire-days": "Per proteggere il tuo account dovrai cambiare la tua password tra {{count}} giorni. ", + "expire-today": "Per proteggere il tuo account dovrai cambiare la tua password oggi. ", + "change-link": "Cambia ora" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "Installazione automatica dei moduli", + "loading": "Recupero delle informazioni sui moduli...", + "finished": "Installazione completata. Clicca su Riavvia per continuare", + "start": "Inizio", + "end": "Fine" + } + } + }, + "widgets": { + "operations": { + "title": "Modifiche", + "blade-subtitle": "Cronologia delle modifiche" + }, + "dynamicProperty": { + "title": "Proprietà dinamiche" + }, + "entitySettings": { + "title": "Impostazioni" + }, + "accountApi": { + "title": "Chiave API", + "blade-subtitle": "Chiave API" + }, + "accountRoles": { + "title": "Ruoli", + "blade-subtitle": "Gestisci ruoli" + } + }, + "dialogs": { + "folders-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare le cartelle o i file selezionati?" + }, + "properties-save": { + "title": "Salva modifiche", + "message": "Le proprietà sono state modificate. Vuoi salvare le modifiche?" + }, + "notification-template-save": { + "title": "Salva modifiche", + "message": "Il modello di notifica è stato modificato. Vuoi salvare le modifiche?" + }, + "role-save": { + "title": "Salva modifiche", + "message": "Il ruolo è stato modificato. Vuoi salvare le modifiche?" + }, + "roles-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare i ruoli selezionati?" + }, + "account-save": { + "title": "Salva modifiche", + "message": "L'account è stato modificato. Vuoi salvare le modifiche?" + }, + "account-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare gli account selezionati?" + }, + "oauthapps-save": { + "title": "Salva modifiche", + "message": "L'applicazione OAuth è stata modificata. Vuoi salvare le modifiche?" + }, + "oauthapps-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare l'applicazione OAuth selezionata?" + }, + "dynamic-property-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare questa Proprietà dinamica?" + }, + "settings-value-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare i valori selezionati?" + }, + "settings-save": { + "title": "Salva modifiche", + "message": "Le impostazioni sono state modificate. Vuoi salvare le modifiche?" + }, + "settings-delete": { + "title": "Conferma eliminazione", + "message": "Le impostazioni sono state modificate. Vuoi salvare le modifiche?" + }, + "localizable-setting-value-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare i valori del dizionario selezionati?" + }, + "localizable-setting-value-save": { + "title": "Salva modifiche", + "message": "Questo valore del dizionario è stato modificato. Vuoi salvare le modifiche?" + }, + "email-sending-success": { + "title": "Invio riuscito", + "message": "L'email è stata inviata con successo!" + }, + "email-send-error": { + "title": "Errore nell'invio", + "message": "L'email non è stata inviata! Errore: {{error}}" + }, + "dictionary-items-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare {{quantity}} elemento/i del dizionario selezionato/i?" + }, + "module-action": { + "title-install": "Conferma installazione", + "title-update": "Conferma aggiornamento", + "title-delete": "Conferma disinstallazione", + "message0-install": "Stai per installare:", + "message0-update": "Stai per aggiornare:", + "message0-delete": "Stai per disinstallare:", + "message1-install": "Verranno installate anche le seguenti dipendenze:", + "message1-delete": "Verranno disinstallati anche i seguenti moduli dipendenti:", + "message2-install": "Installare la selezione e le dipendenze?", + "message2-update": "Aggiornare la selezione e le dipendenze?", + "message2-delete": "Disinstallare questo e TUTTI i moduli dipendenti?" + }, + "module-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler disinstallare questo modulo?" + }, + "api-key-delete": { + "title": "Conferma eliminazione", + "message": "Sei sicuro di voler eliminare questa chiave API?" + }, + "app-restart": { + "title": "Chiusura dell'applicazione", + "message": "Riavvia l'applicazione per applicare le modifiche. A seconda del tuo servizio di hosting, l'applicazione potrebbe riavviarsi automaticamente o potrebbe essere necessario farlo manualmente. Sei sicuro di voler chiudere l'applicazione ora?" + }, + "error-details": { + "title": "Dettagli errore" + }, + "impersonate-no-url": { + "title": "Accesso per conto di", + "message": "L'URL del negozio non è stato aggiunto alle impostazioni del negozio. Si prega di contattare l'amministratore" + }, + "asset-upload-error": { + "title": "Errore di caricamento", + "message": "Scegli una cartella! Non è possibile caricare un file nella radice!" + }, + "run-import": { + "title": "Conferma importazione", + "message": "Sei sicuro di voler importare i dati di esempio?" + }, + "create-folder": { + "title": "Il nome di una cartella deve rispettare le seguenti regole di denominazione:\n Il nome della cartella deve essere compreso tra 3 e 63 caratteri.\n Il nome della cartella deve iniziare con una lettera o un numero e può contenere solo lettere, numeri e trattini (-).\n Ogni trattino (-) deve essere immediatamente preceduto e seguito da una lettera o un numero; non sono consentiti trattini consecutivi.\n Tutte le lettere nel nome di una cartella devono essere minuscole" + }, + "storefront-cache-reset-successfully": { + "title": "Reset della cache", + "message": "La cache dell'applicazione frontend è stata resettata con successo" + } + }, + "commands": { + "login-on-behalf": "Accedi per conto di", + "reset-storefront-cache": "Resetta cache" + } + }, + "permissions": { + "platform:asset:access": "Visualizza risorse nel menu principale", + "platform:asset:delete": "Elimina risorse della Piattaforma", + "platform:asset:update": "Modifica risorse della Piattaforma", + "platform:asset:create": "Carica nuove risorse della Piattaforma", + "platform:asset:read": "Scarica risorse della Piattaforma", + "platform:module:read": "Visualizza dettagli del modulo", + "platform:module:access": "Visualizza moduli nel menu principale", + "platform:module:manage": "Installa/disinstalla moduli", + "platform:setting:read": "Leggi impostazioni della Piattaforma", + "platform:setting:access": "Visualizza impostazioni nel menu principale", + "platform:setting:update": "Modifica impostazioni della Piattaforma", + "platform:dynamic_properties:read": "Visualizza dettagli delle proprietà dinamiche", + "platform:dynamic_properties:create": "Crea nuove proprietà dinamiche", + "platform:dynamic_properties:access": "Visualizza proprietà dinamiche nel menu principale", + "platform:dynamic_properties:update": "Modifica proprietà dinamiche", + "platform:dynamic_properties:delete": "Elimina proprietà dinamiche", + "platform:security:read": "Visualizza dettagli di utenti e ruoli", + "platform:security:create": "Crea nuovi utenti e ruoli", + "platform:security:access": "Visualizza sicurezza nel menu principale", + "platform:security:update": "Modifica utenti e ruoli", + "platform:security:delete": "Elimina utenti e ruoli", + "platform:security:verifyEmail": "Modifica lo stato di verifica e invia email di verifica", + "background_jobs:manage": "Accesso alla console Hangfire", + "platform:exportImport:access": "Visualizza Esporta/Importa nel menu principale", + "platform:import": "Importa dati della Piattaforma e dei moduli", + "platform:export": "Esporta dati della Piattaforma e dei moduli", + "platform:security:loginOnBehalf": "Accedi per conto di un cliente" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Lingue", + "description": "Elenco delle lingue disponibili" + } + } + }, + "ModulesAutoInstalled": { + "description": "Il flag indica che i moduli sono installati automaticamente", + "title": "Moduli installati" + }, + "ModulesAutoInstallState": { + "title": "Stato di autoinstallazione dei moduli", + "description": "Stato attuale della procedura guidata di autoinstallazione dei moduli" + }, + "SetupStep": { + "title": "Passo di configurazione attuale", + "description": "Passo attuale nella procedura guidata di configurazione" + }, + "SampleDataState": { + "title": "Stato dei dati di esempio", + "description": "Stato attuale della procedura guidata dei dati di esempio" + }, + "SendDiagnosticData": { + "title": "Invia dati diagnostici", + "description": "Invia dati diagnostici della Piattaforma VC a VC. Può essere disattivato solo con l'acquisto di una licenza" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Dizionario per i possibili tipi di account", + "title": "Tipi di account" + }, + "DefaultAccountType": { + "title": "Tipo di account predefinito", + "description": "Valore predefinito per il tipo di account durante la creazione di un nuovo account" + }, + "DefaultAccountStatus": { + "title": "Stato account predefinito", + "description": "Valore predefinito per lo stato dell'account durante la creazione di un nuovo account" + }, + "DefaultExternalAccountStatus": { + "title": "Stato account esterno predefinito", + "description": "Valore predefinito per lo stato dell'account durante la creazione di un nuovo account durante l'accesso esterno" + }, + "EnablePruneExpiredTokensJob": { + "description": "Abilita la pulizia dei token/autorizzazioni scaduti e non validi", + "title": "Pulisci token scaduti" + }, + "CronPruneExpiredTokensJob": { + "description": "Espressione cron per il lavoro di pulizia dei token/autorizzazioni scaduti e non validi", + "title": "Cron per il lavoro di pulizia dei token" + }, + "FileExtensionsBlackList": { + "description": "Estensioni di file proibite per il caricamento dalla Piattaforma (in aggiunta a 'FileExtensionsBlackList' in appsettings.json)", + "title": "Lista nera" + }, + "FileExtensionsWhiteList": { + "description": "Estensioni di file consentite per il caricamento dalla Piattaforma (in aggiunta a 'FileExtensionsWhiteList' in appsettings.json)", + "title": "Lista bianca" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Stato persistente del menu principale", + "title": "Stato persistente del menu principale" + } + }, + "Language": { + "description": "Lingua predefinita (codice di due lettere da ISO 639-1, non sensibile alle maiuscole/minuscole). Esempio: it, en, de", + "title": "Lingua" + }, + "RegionalFormat": { + "description": "Formato regionale predefinito (codice locale CLDR, con trattino o underscore come delimitatore, non sensibile alle maiuscole/minuscole). Esempio: it, it_IT, sr_Cyrl, sr_Cyrl_RS", + "title": "Formato regionale" + }, + "TimeZone": { + "description": "Fuso orario predefinito (nome del fuso orario IANA [database tz], esattamente come nel database, sensibile alle maiuscole/minuscole). Esempi: Europe/Rome, America/New_York, Europe/Moscow", + "title": "Fuso orario" + }, + "UseTimeAgo": { + "description": "Quando impostato su true (predefinito), il sistema visualizza la data nel formato 'pochi secondi fa' quando possibile", + "title": "Usa il formato 'tempo fa' quando possibile" + }, + "FullDateThreshold": { + "description": "Il formato 'tempo fa' passerà a un formato di data completo dopo un certo numero di unità di tempo", + "title": "Soglia data completa" + }, + "FullDateThresholdUnit": { + "description": "Unità della soglia di data completa", + "title": "Unità soglia data completa" + }, + "Customization": { + "description": "JSON contiene le impostazioni di personalizzazione dell'interfaccia utente del gestore", + "title": "Personalizzazione dell'interfaccia utente del gestore" + }, + "ShowMeridian": { + "description": "Mostra l'indicatore del meridiano del tempo (AM o PM)", + "title": "Mostra meridiano del tempo" + } + }, + "Cache": { + "Enabled": { + "description": "Questa impostazione ti permette di abilitare e disabilitare globalmente la cache per l'intera applicazione della Piattaforma", + "title": "Abilita o disabilita la cache globalmente" + }, + "AbsoulteExpiration": { + "description": "Specifica il tempo massimo in cui i dati in cache vengono conservati nella cache. Formato: [-][d.]hh:mm:ss[.fffffff]", + "title": "Durata globale degli oggetti in cache" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Stati dell'account", + "description": "Modifica stati dell'account" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Common.json new file mode 100644 index 00000000000..fc74c3fdadf --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "追加", + "activate": "有効化", + "assign": "割り当て", + "cancel": "キャンセル", + "clear": "クリア", + "clear-all": "すべてクリア", + "clone": "複製", + "close": "閉じる", + "confirm": "確認", + "copy-link": "リンクをコピー", + "copy": "コピー", + "create": "作成", + "cut": "切り取り", + "delete": "削除", + "add-all": "すべて追加", + "remove-all": "すべて削除", + "download": "ダウンロード", + "edit": "編集", + "export": "エクスポート", + "generate": "生成", + "import": "インポート", + "import-sample-data": "サンプルデータをインポート", + "install": "インストール", + "manage": "管理", + "more": "その他", + "no": "いいえ", + "new-folder": "新しいフォルダ", + "new-license": "ライセンス更新", + "ok": "OK", + "paste": "貼り付け", + "pick-selected": "選択したものを選ぶ", + "preview": "プレビュー", + "open-browser": "ブラウザで開く", + "redo": "やり直し", + "refresh": "更新", + "remove": "削除", + "reset": "リセット", + "restart": "再起動", + "save": "保存", + "send": "送信", + "select-all": "すべて選択", + "set-to-default": "デフォルトに設定", + "start-export": "エクスポート開始", + "settings": "設定", + "sign-out": "サインアウト", + "undo": "元に戻す", + "uninstall": "アンインストール", + "unselect-all": "すべての選択を解除", + "update": "更新", + "upload": "アップロード", + "yes": "はい", + "add-new-property": "新しいプロパティを追加", + "manage-type-properties": "プロパティの種類", + "manage-profile": "プロフィール管理", + "minimize": "最小化", + "maximize": "最大化", + "stop-sending": "送信停止", + "set-active": "アクティブに設定", + "reject-user": "ユーザーを拒否", + "change-password": "パスワード変更", + "unlock-account": "アカウントのロック解除", + "lock-account": "アカウントをロック", + "today": "今日", + "time": "時間", + "now": "現在", + "date": "日付", + "see-details": "詳細を表示", + "dismiss": "閉じる", + "hide-empty-property-values": "空の値を非表示", + "show-empty-property-values": "空の値を表示", + "titles": { + "refresh": "更新", + "new-folder": "新しいフォルダ", + "upload": "アップロード" + } + }, + "list": { + "no-data": "データなし", + "count": "件数", + "loading": "読み込み中...", + "item-not-found": "エラー:見つかりません" + }, + "placeholders": { + "n-a": "該当なし", + "no-file": "ファイルを選択", + "search-keyword": "キーワードを検索...", + "select-value": "値を選択", + "select-values": "値を選択" + }, + "dialogs": { + "delete": { + "title": "削除の確認", + "message": "選択したエントリを削除してもよろしいですか?" + } + }, + "properties": { + "short-text": { + "title": "短いテキスト", + "description": "1024文字以下のテキスト値" + }, + "long-text": { + "title": "長いテキスト", + "description": "サイズ制限のない無制限のテキスト" + }, + "integer": { + "title": "整数", + "description": "整数" + }, + "decimal": { + "title": "小数", + "description": "精度18、スケール4の小数" + }, + "date-time": { + "title": "日時", + "description": "日付を選択" + }, + "boolean": { + "title": "ブール値", + "description": "スイッチタイプ" + }, + "html": { + "title": "HTML", + "description": "HTMLマークアップ" + }, + "undefined": { + "title": "未定義" + }, + "image": { + "title": "画像", + "description": "画像タイプ" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "短いテキストを入力", + "secure-string": "秘密のテキストを入力", + "email": "メールアドレスを入力", + "url": "URLを入力", + "long-text": "長いテキストを入力", + "integer": "整数を入力", + "number": "小数を入力", + "date-time": "日付を選択", + "short-text-multivalue": "値を追加", + "integer-multivalue": "整数を追加", + "number-multivalue": "小数を追加", + "short-text-dictionary": "値を選択", + "short-text-dictionary-multivalue": "値を選択", + "short-text-multilang": "値を入力", + "long-text-multilang": "値を入力", + "short-text-multivalue-multilang": "値を追加", + "short-text-dictionary-multilang": "値を選択", + "short-text-dictionary-multivalue-multilang": "値を選択", + "long-text-dictionary-multivalue-multilang": "値を選択" + } + }, + "short-text-input": { + "placeholder": "値を入力", + "required": "このフィールドは必須です", + "maxLength": "このフィールドは{{number}}文字以内である必要があります" + }, + "validators": { + "uriWithoutQuery": { + "error": "無効なURI形式です。URIにクエリパラメータがないことを確認してください" + } + }, + "errors": { + "generic-error": "エラー", + "400": "不正なリクエスト", + "401": "認証されていません", + "403": "アクセス禁止", + "404": "見つかりません", + "405": "許可されていないメソッド", + "406": "受け入れられません", + "407": "プロキシ認証が必要です", + "408": "リクエストタイムアウト", + "409": "競合", + "429": "リクエストが多すぎます", + "500": "内部サーバーエラー", + "501": "実装されていません", + "502": "不正なゲートウェイ", + "503": "サービス利用不可", + "504": "ゲートウェイタイムアウト" + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..a6257e6c777 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "アフガニスタン", + "EGY": "エジプト", + "ALA": "オーランド諸島", + "ALB": "アルバニア", + "DZA": "アルジェリア", + "ASM": "アメリカ領サモア", + "VIR": "アメリカ領ヴァージン諸島", + "AND": "アンドラ", + "AGO": "アンゴラ", + "AIA": "アンギラ", + "ATA": "南極大陸(南極条約による特別な地位)", + "ATG": "アンティグア・バーブーダ", + "GNQ": "赤道ギニア", + "ARG": "アルゼンチン", + "ARM": "アルメニア", + "ABW": "アルバ", + "AZE": "アゼルバイジャン", + "ETH": "エチオピア", + "AUS": "オーストラリア", + "BHS": "バハマ", + "BHR": "バーレーン", + "BGD": "バングラデシュ", + "BRB": "バルバドス", + "BLR": "ベラルーシ", + "BEL": "ベルギー", + "BLZ": "ベリーズ", + "BEN": "ベナン", + "BMU": "バミューダ", + "BTN": "ブータン", + "BOL": "ボリビア", + "BES": "ボネール、シント・ユースタティウスおよびサバ", + "BIH": "ボスニア・ヘルツェゴビナ", + "BWA": "ボツワナ", + "BVT": "ブーベ島", + "BRA": "ブラジル", + "VGB": "イギリス領ヴァージン諸島", + "IOT": "イギリス領インド洋地域", + "BRN": "ブルネイ", + "BGR": "ブルガリア", + "BFA": "ブルキナファソ", + "BDI": "ブルンジ", + "CHL": "チリ", + "CHN": "中華人民共和国", + "COK": "クック諸島", + "CRI": "コスタリカ", + "CUW": "キュラソー", + "DNK": "デンマーク", + "DEU": "ドイツ", + "DMA": "ドミニカ国", + "DOM": "ドミニカ共和国", + "DJI": "ジブチ", + "ECU": "エクアドル", + "CIV": "コートジボワール", + "SLV": "エルサルバドル", + "ERI": "エリトリア", + "EST": "エストニア", + "SWZ": "エスワティニ", + "FLK": "フォークランド諸島", + "FRO": "フェロー諸島", + "FJI": "フィジー", + "FIN": "フィンランド", + "FRA": "フランス", + "GUF": "フランス領ギアナ", + "PYF": "フランス領ポリネシア", + "ATF": "フランス領南方・南極地域", + "GAB": "ガボン", + "GMB": "ガンビア", + "GEO": "ジョージア", + "GHA": "ガーナ", + "GIB": "ジブラルタル", + "GRD": "グレナダ", + "GRC": "ギリシャ", + "GRL": "グリーンランド", + "GLP": "グアドループ", + "GUM": "グアム", + "GTM": "グアテマラ", + "GGY": "ガーンジー", + "GIN": "ギニア", + "GNB": "ギニアビサウ", + "GUY": "ガイアナ", + "HTI": "ハイチ", + "HMD": "ハード島とマクドナルド諸島", + "HND": "ホンジュラス", + "HKG": "香港", + "IND": "インド", + "IDN": "インドネシア", + "IMN": "マン島", + "IRQ": "イラク", + "IRN": "イラン", + "IRL": "アイルランド", + "ISL": "アイスランド", + "ISR": "イスラエル", + "ITA": "イタリア", + "JAM": "ジャマイカ", + "JPN": "日本", + "YEM": "イエメン", + "JEY": "ジャージー", + "JOR": "ヨルダン", + "CYM": "ケイマン諸島", + "KHM": "カンボジア", + "CMR": "カメルーン", + "CAN": "カナダ", + "CPV": "カーボベルデ", + "KAZ": "カザフスタン", + "QAT": "カタール", + "KEN": "ケニア", + "KGZ": "キルギス", + "KIR": "キリバス", + "CCK": "ココス(キーリング)諸島", + "COL": "コロンビア", + "COM": "コモロ", + "COD": "コンゴ民主共和国", + "COG": "コンゴ共和国", + "PRK": "朝鮮民主主義人民共和国", + "KOR": "大韓民国", + "HRV": "クロアチア", + "CUB": "キューバ", + "KWT": "クウェート", + "LAO": "ラオス", + "LSO": "レソト", + "LVA": "ラトビア", + "LBN": "レバノン", + "LBR": "リベリア", + "LBY": "リビア", + "LIE": "リヒテンシュタイン", + "LTU": "リトアニア", + "LUX": "ルクセンブルク", + "MAC": "マカオ", + "MDG": "マダガスカル", + "MWI": "マラウイ", + "MYS": "マレーシア", + "MDV": "モルディブ", + "MLI": "マリ", + "MLT": "マルタ", + "MAR": "モロッコ", + "MHL": "マーシャル諸島", + "MTQ": "マルティニーク", + "MRT": "モーリタニア", + "MUS": "モーリシャス", + "MYT": "マヨット", + "MEX": "メキシコ", + "FSM": "ミクロネシア連邦", + "MDA": "モルドバ", + "MCO": "モナコ", + "MNG": "モンゴル", + "MNE": "モンテネグロ", + "MSR": "モントセラト", + "MOZ": "モザンビーク", + "MMR": "ミャンマー", + "NAM": "ナミビア", + "NRU": "ナウル", + "NPL": "ネパール", + "NCL": "ニューカレドニア", + "NZL": "ニュージーランド", + "NIC": "ニカラグア", + "NLD": "オランダ", + "NER": "ニジェール", + "NGA": "ナイジェリア", + "NIU": "ニウエ", + "MNP": "北マリアナ諸島", + "MKD": "北マケドニア", + "NFK": "ノーフォーク島", + "NOR": "ノルウェー", + "OMN": "オマーン", + "AUT": "オーストリア", + "TLS": "東ティモール", + "PAK": "パキスタン", + "PSE": "パレスチナ", + "PLW": "パラオ", + "PAN": "パナマ", + "PNG": "パプアニューギニア", + "PRY": "パラグアイ", + "PER": "ペルー", + "PHL": "フィリピン", + "PCN": "ピトケアン", + "POL": "ポーランド", + "PRT": "ポルトガル", + "PRI": "プエルトリコ", + "REU": "レユニオン", + "RWA": "ルワンダ", + "ROU": "ルーマニア", + "RUS": "ロシア", + "SLB": "ソロモン諸島", + "BLM": "サン・バルテルミー", + "MAF": "サン・マルタン(フランス領)", + "ZMB": "ザンビア", + "WSM": "サモア", + "SMR": "サンマリノ", + "STP": "サントメ・プリンシペ", + "SAU": "サウジアラビア", + "SWE": "スウェーデン", + "CHE": "スイス", + "SEN": "セネガル", + "SRB": "セルビア", + "SYC": "セーシェル", + "SLE": "シエラレオネ", + "ZWE": "ジンバブエ", + "SGP": "シンガポール", + "SXM": "シント・マールテン(オランダ領)", + "SVK": "スロバキア", + "SVN": "スロベニア", + "SOM": "ソマリア", + "ESP": "スペイン", + "LKA": "スリランカ", + "SHN": "セントヘレナ・アセンションおよびトリスタンダクーニャ", + "KNA": "セントクリストファー・ネイビス", + "LCA": "セントルシア", + "SPM": "サンピエール島・ミクロン島", + "VCT": "セントビンセント・グレナディーン", + "ZAF": "南アフリカ共和国", + "SDN": "スーダン", + "SGS": "サウスジョージア・サウスサンドウィッチ諸島", + "SSD": "南スーダン", + "SUR": "スリナム", + "SJM": "スヴァールバル諸島およびヤンマイエン島", + "SYR": "シリア", + "TJK": "タジキスタン", + "TWN": "台湾", + "TZA": "タンザニア", + "THA": "タイ", + "TGO": "トーゴ", + "TKL": "トケラウ", + "TON": "トンガ", + "TTO": "トリニダード・トバゴ", + "TCD": "チャド", + "CZE": "チェコ", + "TUN": "チュニジア", + "TUR": "トルコ", + "TKM": "トルクメニスタン", + "TCA": "タークス・カイコス諸島", + "TUV": "ツバル", + "UGA": "ウガンダ", + "UKR": "ウクライナ", + "HUN": "ハンガリー", + "UMI": "合衆国領有小離島", + "URY": "ウルグアイ", + "UZB": "ウズベキスタン", + "VUT": "バヌアツ", + "VAT": "バチカン市国", + "VEN": "ベネズエラ", + "ARE": "アラブ首長国連邦", + "USA": "アメリカ合衆国", + "GBR": "イギリス", + "VNM": "ベトナム", + "WLF": "ウォリス・フツナ", + "CXR": "クリスマス島", + "ESH": "西サハラ", + "CAF": "中央アフリカ共和国", + "CYP": "キプロス" + }, + "CAN": { + "AB": "アルバータ州", + "BC": "ブリティッシュコロンビア州", + "MB": "マニトバ州", + "NB": "ニューブランズウィック州", + "NL": "ニューファンドランド・ラブラドール州", + "NT": "ノースウエスト準州", + "NS": "ノバスコシア州", + "NU": "ヌナブト準州", + "ON": "オンタリオ州", + "PE": "プリンスエドワードアイランド州", + "QC": "ケベック州", + "SK": "サスカチュワン州", + "YT": "ユーコン準州" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..691874cb162 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ja.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "ホーム", + "browse": "ブラウズ", + "configuration": "設定", + "notifications": "通知", + "more": "その他", + "settings": "設定", + "dynamic-properties": "動的プロパティ", + "security": "セキュリティ", + "modules": "モジュール", + "export-import": "エクスポート&インポート", + "user-profile": "ユーザープロフィール", + "assets": "リソース", + "toggle-favorites": "Shift + スペースでお気に入りを切り替え", + "help": "ヘルプ" + }, + "navigation": { + "back": "戻る" + }, + "blades": { + "system-info": { + "title": "プラットフォーム情報", + "labels": { + "clr-version": "CLRバージョン", + "environment-name": "環境モード", + "is-64-bit-os": "64ビットオペレーティングシステム", + "is-64-bit-process": "64ビットプロセス", + "database-provider": "データベースプロバイダー" + } + }, + "asset-list": { + "title": "リソース管理", + "bread-crumb-top": "すべてのリソース", + "labels": { + "picture": "画像", + "name": "名前", + "size": "サイズ", + "modified": "変更日時", + "actions": "アクション", + "group": "グループ", + "language": "言語" + } + }, + "asset-upload": { + "title": "リソースアップロード", + "labels": { + "select-files": "ファイルを選択", + "drag-note": "ファイルをここにドラッグ&ドロップ", + "progress": "進行状況", + "asset-uploaded": "リソースがアップロードされました" + }, + "placeholders": { + "image-url": "ファイルURLをここに貼り付け" + } + }, + "operation-list": { + "labels": { + "login": "ログイン", + "details": "詳細", + "time": "時間" + } + }, + "dynamicObject-list": { + "title": "動的オブジェクトタイプ", + "subtitle": "動的プロパティを管理するオブジェクトタイプを選択", + "labels": { + "no-objects": "動的プロパティをサポートするオブジェクトはまだありません" + } + }, + "dynamicProperty-detail": { + "title": "プロパティ管理", + "subtitle": "プロパティ管理", + "subtitle-new": "新しいプロパティ", + "labels": { + "property-name": "プロパティ名", + "required": "必須", + "multivalue": "複数値", + "multilingual": "多言語", + "dictionary": "辞書", + "description": "説明", + "display-order": "表示順", + "display-name": "表示名", + "value-type": "値タイプ", + "dictionary-values": "辞書の値", + "manage-dictionary": "辞書を管理" + }, + "placeholders": { + "description": "プロパティの説明を入力", + "display-name": "表示名を入力...", + "display-order": "表示順" + }, + "validations": { + "multivalue": "複数値プロパティは、ShortText、Integer、またはDecimal値タイプのみ可能です", + "multilingual": "テキストまたはHTML値のみ多言語対応可能です", + "dictionary": "ShortText値タイプの辞書のみサポートされています" + } + }, + "dynamicProperty-list": { + "subtitle": "動的プロパティの管理", + "labels": { + "no-properties": "動的プロパティはまだありません" + } + }, + "notifications-menu": { + "subtitle": "通知システムの操作" + }, + "property-dictionary": { + "title": "辞書の値", + "subtitle": "辞書の値を管理", + "labels": { + "edit-value": "値を編集", + "new-value": "新しい値", + "dictionary-name": "辞書エントリー名", + "localized-values": "ローカライズされた値", + "current-values": "現在の値", + "name": "名前", + "values": "値" + }, + "validations": { + "dictionary-name-required": "必須", + "dictionary-name": "重複する名前が見つかりました", + "localized-values-required": "必須", + "localized-values": "重複する名前が見つかりました", + "dictionary": "ShortText値タイプの辞書のみサポートされています" + }, + "placeholders": { + "dictionary-name": "名前を入力", + "localized-values": "値を入力" + } + }, + "propertyValue-list": { + "title": "動的プロパティ", + "subtitle": "", + "labels": { + "header": "プロパティ値", + "no-properties": "このエンティティにはまだ動的プロパティがありません。'プロパティのタイプ'をクリックしてプロパティを作成してください。現在のエンティティビューを閉じて再度開くと、動的プロパティがロードされます" + } + }, + "edit-array": { + "validations": { + "new-value-required": "必須" + }, + "labels": { + "new-value": "新しい値", + "current-values": "現在の値", + "values": "値" + }, + "placeholders": { + "value": "値を入力" + } + }, + "export-main": { + "title": "データエクスポート", + "labels": { + "platform-entries": "プラットフォームエントリー", + "choose-modules": "エクスポートするモジュールを選択", + "download-url": "ダウンロードURL", + "errors": "エラー", + "start": "開始", + "end": "終了" + }, + "menu": { + "security": { + "title": "セキュリティ", + "description": "アカウントとロール" + }, + "binary": { + "title": "バイナリ", + "description": "バイナリデータ" + }, + "settings": { + "title": "設定", + "description": "プラットフォーム設定" + }, + "dynamic-props": { + "title": "動的プロパティ", + "description": "プラットフォームの動的プロパティ" + } + } + }, + "import-main": { + "title": "データインポート", + "labels": { + "start-import": "インポート開始", + "select-file": "インポートする.zipファイルを選択してください。ファイルはCommerce Managerのデータエクスポートで作成されたものである必要があります", + "drag-note": "インポートする.zipファイルをドラッグ&ドロップしてください。ファイルはCommerce Managerのデータエクスポートで作成されたものである必要があります", + "upload-failed": "アップロード失敗", + "upload-progress": "アップロード進行状況", + "import-progress": "インポート進行状況", + "import-finished": "インポート完了", + "import-data-information": "インポートデータ情報", + "author": "作成者", + "data-file-created": "データファイル作成日時", + "created-platform-version": "作成されたプラットフォームバージョン", + "platform-entries": "プラットフォームエントリー", + "choose-modules": "インポートするモジュールを選択", + "no-data": "データなし", + "errors": "エラー", + "start": "開始", + "end": "終了" + }, + "menu": { + "security": { + "title": "セキュリティ", + "description": "アカウントとロール" + }, + "binary": { + "title": "バイナリ", + "description": "バイナリデータ" + }, + "settings": { + "title": "設定", + "description": "プラットフォーム設定" + }, + "dynamic-props": { + "title": "動的プロパティ", + "description": "プラットフォームの動的プロパティ" + } + } + }, + "exportImport-main": { + "title": "データエクスポートとインポート", + "menu": { + "export": { + "title": "エクスポート", + "description": "データはファイルに保存され、後でインポートできます" + }, + "import": { + "title": "インポート", + "description": "エクスポートされたファイルからデータをインポート" + } + } + }, + "resolve-result": { + "title": "プレビュー結果", + "labels": { + "subject": "件名", + "body": "本文" + } + }, + "module-settings-detail": { + "title": "モジュール設定" + }, + "module-wizard-progress-step": { + "title-install": "モジュールインストール", + "title-update": "モジュール更新", + "title-uninstall": "モジュールアンインストール", + "labels": { + "start": "開始", + "end": "終了", + "progress-messages": "進行メッセージ", + "process-completed": "モジュールインストールプロセスが完了しました", + "restart-application": "アプリケーションを今すぐ再起動するか、後で再起動してください" + } + }, + "module-detail": { + "title": "モジュール情報", + "labels": { + "i-accept-the": "私は", + "license-link": "ライセンス", + "license": "ライセンス", + "agreement": "契約に同意します", + "install-from-file": "ファイルからモジュールをインストール/更新", + "select-module-file": "中央モジュールリポジトリ以外の外部ソースからモジュール(.zip)ファイルをアップロード", + "upload-progress": "アップロード進行状況", + "module-info": "モジュール情報", + "title": "タイトル", + "official": "{{$owner}}の公式モジュール", + "owners": "{{$owner}}によって開発", + "author": "作成者", + "authors": "作成者", + "id": "ID", + "version": "バージョン", + "project-information": "プロジェクト情報", + "description": "説明", + "platform-version": "プラットフォームバージョン", + "dependencies": "依存関係", + "optional-dependencies": "オプションの依存関係", + "tags": "タグ", + "install-version": "インストールバージョン", + "errors": "エラー" + } + }, + "modules-main": { + "title": "モジュール", + "labels": { + "updates": "アップデート", + "available": "利用可能", + "installed": "インストール済み", + "withErrors": "エラー", + "advanced": "詳細設定" + } + }, + "modules-list": { + "subtitle": "モジュール管理", + "labels": { + "grouping": "モジュールバンドルを表示", + "ungrouped": "その他", + "no-updates": "アップデートが見つかりません", + "no-modules-part1": "インストールする新しいモジュールはありません", + "no-installed-modules": "インストール済みのモジュールが見つかりません", + "icon": "アイコン", + "up-to-date": "モジュールは最新です", + "update-available": "このモジュールの更新が利用可能です", + "module": "モジュール", + "version": "バージョン", + "author": "作成者", + "installed": "インストール済みモジュール", + "manual-install-warning": "警告!RefreshProbingFolderOnStartがfalseに設定されているため、手動でインストールされたモジュールは起動しません" + } + }, + "history": { + "title": "システムイベント", + "subtitle": "イベント履歴", + "labels": { + "type": "タイプ", + "title": "タイトル", + "created": "作成日時", + "description": "説明" + } + }, + "historyDetailDefault": { + "title": "イベント詳細", + "subtitle": "イベント詳細", + "labels": { + "start": "開始", + "end": "終了", + "elapsed": "経過時間", + "errors": "エラー", + "stats": "{{ totalCount }}件中{{ processedCount }}件処理済み" + } + }, + "menuHeader": { + "labels": { + "history": "履歴", + "clear-recent": "最近の履歴をすべてクリア" + } + }, + "account-changePassword": { + "labels": { + "title": "新しいパスワードを入力してください", + "login": "ログイン", + "force-change-info": "パスワードの有効期限が切れています。マネージャーの使用を続けるにはパスワードを変更する必要があります", + "current-password": "現在のパスワード", + "new-password": "新しいパスワード", + "repeat-password": "新しいパスワードを再入力", + "cancel": "キャンセル", + "save": "変更", + "fail": "申し訳ありませんが、このユーザーのパスワードをリセットできませんでした" + }, + "validations": { + "current-password": "必須", + "new-password": "古いパスワードと新しいパスワードが同じです!", + "repeat-password": "新しいパスワードが一致しません!" + }, + "placeholders": { + "current-password": "現在のパスワードを入力", + "new-password": "新しいパスワードを入力", + "repeat-password": "新しいパスワードを再入力" + } + }, + "account-resetPassword": { + "subtitle": "ユーザーパスワードの変更", + "labels": { + "new-password": "新しいパスワード", + "repeat-password": "パスワードを再入力", + "force-password-change": "次回サインイン時にこのユーザーにパスワードの変更を強制する" + }, + "validations": { + "repeat-password": "新しいパスワードが一致しません!", + "invalid-token": "パスワードリセットトークンが無効または期限切れです", + "password-too-weak": "新しいパスワードが1つ以上のパスワードセキュリティポリシーに準拠していません:", + "passwordTooShort": "パスワードは{{parameter}}文字以上である必要があります", + "passwordRequiresUniqueChars": "パスワードは少なくとも{{parameter}}種類の異なる文字を使用する必要があります", + "passwordRequiresLower": "パスワードには少なくとも1つの小文字('a'-'z')が必要です", + "passwordRequiresUpper": "パスワードには少なくとも1つの大文字('A'-'Z')が必要です", + "passwordRequiresDigit": "パスワードには少なくとも1つの数字('0'-'9')が必要です", + "passwordRequiresNonAlphanumeric": "パスワードには少なくとも1つの英数字以外の文字が必要です", + "recentPasswordUsed": "このパスワードは過去に使用されています。別のパスワードを選択してください" + }, + "placeholders": { + "new-password": "新しいパスワードを入力", + "repeat-password": "新しいパスワードを再入力" + } + }, + "account-detail": { + "title-new": "新規アカウント", + "labels": { + "user-information": "ユーザー情報", + "is-administrator": "管理者権限", + "account-type": "アカウントタイプ", + "login": "ログイン", + "account-state": "アカウント状態", + "account-email": "メールアドレス", + "locked-state": "ロック状態", + "status": "ステータス", + "verified": "認証済み", + "resend-link": "リンクを再送信", + "link-sent": "リンクが送信されました", + "last-login-date": "最終ログイン日時" + }, + "placeholders": { + "account-type": "選択してください...", + "email": "メールアドレスを入力", + "user-name": "ユーザー名を入力", + "status": "選択してください..." + } + }, + "account-list": { + "title": "ユーザー", + "subtitle": "セキュリティサービス", + "labels": { + "name": "名前", + "account-type": "アカウントタイプ", + "login": "ログイン", + "state": "状態", + "status": "ステータス" + } + }, + "account-api": { + "labels": { + "api-key": "APIキー", + "is-active": "アクティブ" + }, + "placeholders": { + "api-key": "APIキーを入力" + } + }, + "role-detail": { + "subtitle": "ロール詳細", + "labels": { + "summary": "概要", + "name": "名前", + "description": "説明", + "assigned-permissions": "割り当てられた権限", + "permission-name": "名前", + "assigned-scopes": "割り当てられたスコープ", + "no-permissions-assigned": "割り当てられた権限がありません" + }, + "placeholders": { + "name": "名前を入力", + "description": "説明を入力" + } + }, + "account-roles": { + "subtitle": "ロールの割り当て", + "labels": { + "select-roles": "割り当てるロールを選択", + "no-roles": "割り当てるロールがありません" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "割り当てられたロール", + "no-assigned": "割り当てられたロールがありません" + } + }, + "permission-scopes": { + "subtitle": "権限スコープの設定", + "labels": { + "select-bounded-scopes": "バウンドされたスコープを選択", + "selected": "選択済み", + "scope-name": "スコープ名とパラメータ", + "no-scopes": "スコープがありません" + } + }, + "role-permissions": { + "subtitle": "権限の割り当て", + "labels": { + "select-permissions": "割り当てる権限を選択" + } + }, + "new-role-wizard": { + "title": "新規ロール", + "labels": { + "summary": "概要", + "name": "名前", + "description": "説明", + "assign-permissions": "権限の割り当て" + }, + "placeholders": { + "name": "名前を入力", + "description": "説明を入力" + } + }, + "role-list": { + "title": "ロール", + "subtitle": "セキュリティサービス", + "labels": { + "name": "名前" + } + }, + "oauthapps": { + "labels": { + "clientId": "クライアントID", + "displayName": "表示名", + "type": "タイプ", + "clientSecret": "クライアントシークレット", + "assigned-permissions": "割り当てられた権限", + "redirectUris": "リダイレクトURI", + "postLogoutRedirectUris": "ログアウト後のリダイレクトURI" + }, + "placeholders": { + "clientId": "クライアントIDを入力", + "displayName": "表示名を入力", + "type": "タイプを入力", + "clientSecret": "クライアントシークレットを入力" + } + }, + "oauthapps-list": { + "title": "OAuthアプリケーション", + "subtitle": "セキュリティサービス" + }, + "oauthapps-detail": { + "title": "OAuthアプリケーションの編集", + "title-new": "OAuthアプリケーションの作成", + "subtitle": "セキュリティサービス", + "labels": { + "clientSecret-warning": "警告!シークレットを今すぐコピーする必要があります。ブレードを閉じると非表示になります", + "urls": "URL" + }, + "blades": { + "edit-redirectUris": { + "title": "リダイレクトURI", + "subtitle": "リダイレクトURIの管理" + }, + "edit-postLogoutRedirectUris": { + "title": "ログアウト後のリダイレクトURI", + "subtitle": "ログアウト後のリダイレクトURIの管理" + } + } + }, + "login": { + "labels": { + "sign-in": "{{title}}マネージャーにサインイン", + "login": "ログイン", + "password": "パスワード", + "remember-me": "ログイン情報を記憶する", + "external-sign-in": "{{displayName}}でサインイン", + "forgot-password": "パスワードをお忘れですか?", + "log-in": "ログイン", + "log-in-placeholder": "メールアドレスまたはユーザー名を入力", + "password-placeholder": "パスワードを入力", + "azure-log-in-label": "Azureを通じて管理サイトにログイン", + "password-log-in-type": "システムユーザー", + "or": "または", + "signing-in": "サインイン中..." + } + }, + "forgotpassword": { + "title": "パスワードをお忘れですか?", + "labels": { + "login": "ログインまたはメールアドレス", + "description": "パスワードをリセットする方法についての説明をメールでお送りします", + "success": "説明のメールを送信しました", + "fail": "申し訳ありませんが、このユーザーのパスワードをリセットできませんでした", + "back": "戻る", + "submit": "送信", + "time-limit": "{{countdown}}後に再試行できます", + "time-limit-end": "今すぐ再試行できます" + }, + "placeholders": { + "login-or-email": "ログインまたはメールアドレスを入力" + } + }, + "access-denied": { + "title": "アクセスが拒否されました", + "labels": { + "message": "このリソースにアクセスする権限がありません。管理者にお問い合わせください", + "button": "別の認証情報でログイン" + } + }, + "resetpassword": { + "title": "パスワードのリセット", + "labels": { + "success": "パスワードがリセットされました", + "fail": "申し訳ありませんが、このユーザーのパスワードをリセットできませんでした", + "submit": "リセット", + "log-in": "サインイン" + } + }, + "license": { + "title": "現在のライセンス", + "title-new": "新しいライセンスの有効化", + "license-info": "ライセンス情報", + "license-activation": "ライセンスの有効化", + "labels": { + "info-running-no-license": "このVirto Commerceインスタンスは以下で実行されています:", + "info-open-source-license": "オープンソースコミュニティライセンス", + "info0": "ライセンスの取得または更新:", + "info1": "提出してください ", + "info2": "リクエストを処理し、まもなくご連絡いたします", + "info3": "「アクティベーションコード」および/またはライセンスファイルを受け取ったら、以下のアクティベーションフィールドのいずれかに入力してください", + "info4": "システムが新しいライセンス情報を表示します。確認して「有効化」をクリックして確定してください", + "customer": "ライセンス発行先", + "type": "タイプ", + "expiration": "有効期限", + "email": "顧客メールアドレス", + "request-license": "ライセンスリクエストフォーム", + "code-descr": "受け取ったライセンスの「アクティベーションコード」を入力し、[Enter]を押してください。これが最も迅速なライセンス有効化方法です。(インターネット接続が必要)", + "file-descr": "オプションで、受け取ったライセンスファイルを提供してください。(オフライン有効化)", + "upload-progress": "アップロード進行状況", + "errors": "有効化エラー" + }, + "placeholders": { + "code": "アクティベーションコードを入力" + } + }, + "new-account-wizard": { + "labels": { + "login": "ログイン", + "email": "メールアドレス", + "password": "パスワード", + "repeat-password": "パスワードの再入力", + "assign-roles": "ロールの割り当て" + }, + "placeholders": { + "email": "メールアドレスを入力", + "login": "ログインを入力", + "password": "新しいパスワードを入力", + "repeat-password": "新しいパスワードを再入力" + }, + "validations": { + "repeat-password": "入力されたパスワードが一致しません!", + "password-too-weak": "入力されたパスワードが1つ以上のパスワードセキュリティポリシーに準拠していません:" + } + }, + "security-main": { + "title": "セキュリティ", + "subtitle": "ユーザー管理" + }, + "entitySetting-list": { + "title": "設定" + }, + "setting-dictionary": { + "subtitle": "辞書値の管理", + "labels": { + "new-value": "値を入力してください", + "current-values": "現在の値", + "value": "値" + }, + "validations": { + "new-value-required": "必須", + "new-value": "重複する値が見つかりました" + }, + "placeholders": { + "new-value": "値を入力してください" + } + }, + "settings-detail": { + "title": "設定値", + "hide-description": "非表示" + }, + "settingGroup-list": { + "title": "設定", + "bread-crumb-top": "すべての設定" + }, + "settings-uploader": { + "drag-drop-comment": "ファイルをここにドラッグ&ドロップ", + "or": "または", + "browse-your-files": "ファイルを参照" + }, + "localizable-setting-value-list": { + "subtitle": "辞書値の管理" + }, + "localizable-setting-value-details": { + "title": "辞書値の編集", + "alias": "システム値" + }, + "user-profile": { + "title": "ユーザープロフィール", + "labels": { + "language": "言語", + "language-description": "表示言語。ブラウザまたはフォールバック言語を使用する場合はクリアしてください", + "regional-format": "地域フォーマット", + "regional-format-description": "数字、通貨、日付、時刻の地域フォーマット。ブラウザまたはフォールバック地域フォーマットを使用する場合はクリアしてください", + "time-zone": "タイムゾーン", + "time-zone-description": "現在のユーザーのタイムゾーン(IANA(tzデータベース)形式)。あなたのタイムゾーンに最も近い都市を選択してください。ブラウザまたはフォールバックタイムゾーンを使用する場合はクリアしてください", + "use-time-ago": "可能な場合は経過時間形式を使用", + "full-date-threshold-group": "以下より前の日付には完全な日付形式を使用...", + "full-date-threshold-description": "時間単位の数値", + "full-date-threshold-unit-description": "時間単位(例:時間または年)" + }, + "placeholders": { + "full-date-threshold": "しきい値を入力", + "full-date-threshold-unit": "しきい値の単位を選択" + }, + "full-date-threshold-units": { + "Never": "なし", + "Seconds": "秒", + "Minutes": "分", + "Hours": "時間", + "Days": "日", + "Weeks": "週", + "Months": "月", + "Quarters": "四半期", + "Years": "年" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "サンプルデータタイプを選択", + "size": "サイズ", + "version": "バージョン" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "サンプルデータの初期化", + "starting-initialization": "サンプルデータの初期化を開始しています...", + "errors": "エラー", + "start": "開始", + "end": "終了" + } + }, + "licensing": { + "license-absent": "コミュニティライセンス", + "license-present": "{{type}}ライセンス、{{expirationDate | amParse | date}}に期限切れ", + "community": "コミュニティエディションを実行中、商用ライセンスをリクエストするにはクリック", + "expired": "ライセンスは{{expirationDate | amParse | date}}に期限切れました。更新してください", + "purchase": "購入", + "renew": "更新", + "expiration-date": "有効期限" + }, + "password-expiry": { + "expire-days": "アカウントを保護するため、{{count}}日以内にパスワードを変更する必要があります。", + "expire-today": "アカウントを保護するため、今日パスワードを変更する必要があります。", + "change-link": "今すぐ変更" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "モジュールの自動インストール", + "loading": "モジュール情報を取得中...", + "finished": "インストールが完了しました。続行するには再起動をクリックしてください", + "start": "開始", + "end": "終了" + } + } + }, + "widgets": { + "operations": { + "title": "変更", + "blade-subtitle": "変更履歴" + }, + "dynamicProperty": { + "title": "動的プロパティ" + }, + "entitySettings": { + "title": "設定" + }, + "accountApi": { + "title": "APIキー", + "blade-subtitle": "APIキー" + }, + "accountRoles": { + "title": "ロール", + "blade-subtitle": "ロールの管理" + } + }, + "dialogs": { + "folders-delete": { + "title": "削除の確認", + "message": "選択したフォルダまたはファイルを削除してもよろしいですか?" + }, + "properties-save": { + "title": "変更の保存", + "message": "プロパティが変更されました。変更を保存しますか?" + }, + "notification-template-save": { + "title": "変更の保存", + "message": "通知テンプレートが変更されました。変更を保存しますか?" + }, + "role-save": { + "title": "変更の保存", + "message": "ロールが変更されました。変更を保存しますか?" + }, + "roles-delete": { + "title": "削除の確認", + "message": "選択したロールを削除してもよろしいですか?" + }, + "account-save": { + "title": "変更の保存", + "message": "アカウントが変更されました。変更を保存しますか?" + }, + "account-delete": { + "title": "削除の確認", + "message": "選択したアカウントを削除してもよろしいですか?" + }, + "oauthapps-save": { + "title": "変更の保存", + "message": "OAuthアプリケーションが変更されました。変更を保存しますか?" + }, + "oauthapps-delete": { + "title": "削除の確認", + "message": "選択したOAuthアプリケーションを削除してもよろしいですか?" + }, + "dynamic-property-delete": { + "title": "削除の確認", + "message": "この動的プロパティを削除してもよろしいですか?" + }, + "settings-value-delete": { + "title": "削除の確認", + "message": "選択した値を削除してもよろしいですか?" + }, + "settings-save": { + "title": "変更の保存", + "message": "設定が変更されました。変更を保存しますか?" + }, + "settings-delete": { + "title": "削除の確認", + "message": "設定が変更されました。変更を保存しますか?" + }, + "localizable-setting-value-delete": { + "title": "削除の確認", + "message": "選択した辞書値を削除してもよろしいですか?" + }, + "localizable-setting-value-save": { + "title": "変更の保存", + "message": "この辞書値が変更されました。変更を保存しますか?" + }, + "email-sending-success": { + "title": "送信成功", + "message": "メールが正常に送信されました!" + }, + "email-send-error": { + "title": "送信エラー", + "message": "メールを送信できませんでした!エラー:{{error}}" + }, + "dictionary-items-delete": { + "title": "削除の確認", + "message": "選択した{{quantity}}個の辞書項目を削除してもよろしいですか?" + }, + "module-action": { + "title-install": "インストールの確認", + "title-update": "更新の確認", + "title-delete": "アンインストールの確認", + "message0-install": "以下をインストールしようとしています:", + "message0-update": "以下を更新しようとしています:", + "message0-delete": "以下をアンインストールしようとしています:", + "message1-install": "以下の依存関係も一緒にインストールされます:", + "message1-delete": "以下の依存モジュールも一緒にアンインストールされます:", + "message2-install": "選択項目と依存関係をインストールしますか?", + "message2-update": "選択項目と依存関係を更新しますか?", + "message2-delete": "このモジュールとすべての依存モジュールをアンインストールしますか?" + }, + "module-delete": { + "title": "削除の確認", + "message": "このモジュールをアンインストールしてもよろしいですか?" + }, + "api-key-delete": { + "title": "削除の確認", + "message": "このAPIキーを削除してもよろしいですか?" + }, + "app-restart": { + "title": "アプリケーションのシャットダウン", + "message": "変更を適用するにはアプリケーションを再起動する必要があります。ホスティングサービスによっては、アプリケーションが自動的に再起動するか、手動で再起動する必要があります。今すぐアプリケーションを閉じてもよろしいですか?" + }, + "error-details": { + "title": "エラーの詳細" + }, + "impersonate-no-url": { + "title": "代理ログイン", + "message": "ストアのURLがストア設定に追加されていません。管理者に連絡してください" + }, + "asset-upload-error": { + "title": "アップロードエラー", + "message": "フォルダを選択してください!ルートにファイルをアップロードすることはできません!" + }, + "run-import": { + "title": "インポートの確認", + "message": "サンプルデータをインポートしてもよろしいですか?" + }, + "create-folder": { + "title": "フォルダ名は以下の命名規則に従う必要があります:\n フォルダ名は3文字以上63文字以下である必要があります。\n フォルダ名は文字または数字で始まり、文字、数字、ハイフン(-)のみを含むことができます。\n 各ハイフン(-)の前後には文字または数字が必要です。連続したハイフンは使用できません。\n フォルダ名のすべての文字は小文字である必要があります" + }, + "storefront-cache-reset-successfully": { + "title": "キャッシュのリセット", + "message": "フロントエンドアプリケーションのキャッシュが正常にリセットされました" + } + }, + "commands": { + "login-on-behalf": "代理ログイン", + "reset-storefront-cache": "キャッシュのリセット" + } + }, + "permissions": { + "platform:asset:access": "メインメニューでリソースを表示", + "platform:asset:delete": "プラットフォームリソースの削除", + "platform:asset:update": "プラットフォームリソースの変更", + "platform:asset:create": "新しいプラットフォームリソースのアップロード", + "platform:asset:read": "プラットフォームリソースのダウンロード", + "platform:module:read": "モジュールの詳細を表示", + "platform:module:access": "メインメニューでモジュールを表示", + "platform:module:manage": "モジュールのインストール/アンインストール", + "platform:setting:read": "プラットフォーム設定の読み取り", + "platform:setting:access": "メインメニューで設定を表示", + "platform:setting:update": "プラットフォーム設定の変更", + "platform:dynamic_properties:read": "動的プロパティの詳細を表示", + "platform:dynamic_properties:create": "新しい動的プロパティの作成", + "platform:dynamic_properties:access": "メインメニューで動的プロパティを表示", + "platform:dynamic_properties:update": "動的プロパティの変更", + "platform:dynamic_properties:delete": "動的プロパティの削除", + "platform:security:read": "ユーザーとロールの詳細を表示", + "platform:security:create": "新しいユーザーとロールの作成", + "platform:security:access": "メインメニューでセキュリティを表示", + "platform:security:update": "ユーザーとロールの変更", + "platform:security:delete": "ユーザーとロールの削除", + "platform:security:verifyEmail": "確認済み状態の変更と確認メールの送信", + "background_jobs:manage": "Hangfireコンソールへのアクセス", + "platform:exportImport:access": "メインメニューでエクスポート/インポートを表示", + "platform:import": "プラットフォームとモジュールデータのインポート", + "platform:export": "プラットフォームとモジュールデータのエクスポート", + "platform:security:loginOnBehalf": "顧客の代理としてログイン" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "言語", + "description": "利用可能な言語のリスト" + } + } + }, + "ModulesAutoInstalled": { + "description": "モジュールが自動的にインストールされたことを示すフラグ", + "title": "インストールされたモジュール" + }, + "ModulesAutoInstallState": { + "title": "モジュール自動インストールの状態", + "description": "モジュール自動インストールウィザードの現在の状態" + }, + "SetupStep": { + "title": "現在のセットアップステップ", + "description": "セットアップウィザードの現在のステップ" + }, + "SampleDataState": { + "title": "サンプルデータの状態", + "description": "サンプルデータウィザードの現在の状態" + }, + "SendDiagnosticData": { + "title": "診断データの送信", + "description": "VCプラットフォームの診断データをVCに送信します。ライセンスの購入でのみ無効にできます" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "可能なアカウントタイプの辞書", + "title": "アカウントタイプ" + }, + "DefaultAccountType": { + "title": "デフォルトのアカウントタイプ", + "description": "新しいアカウントを作成する際のアカウントタイプのデフォルト値" + }, + "DefaultAccountStatus": { + "title": "デフォルトのアカウントステータス", + "description": "新しいアカウントを作成する際のアカウントステータスのデフォルト値" + }, + "DefaultExternalAccountStatus": { + "title": "デフォルトの外部アカウントステータス", + "description": "外部サインイン中に新しいアカウントを作成する際のアカウントステータスのデフォルト値" + }, + "EnablePruneExpiredTokensJob": { + "description": "期限切れおよび無効なトークン/認証の削除を有効にします", + "title": "期限切れトークンの削除" + }, + "CronPruneExpiredTokensJob": { + "description": "期限切れおよび無効なトークン/認証を削除するジョブのCron式", + "title": "トークン削除ジョブのCron" + }, + "FileExtensionsBlackList": { + "description": "プラットフォームによってアップロードが禁止されているファイル拡張子(appsettings.jsonの'FileExtensionsBlackList'に加えて)", + "title": "ブラックリスト" + }, + "FileExtensionsWhiteList": { + "description": "プラットフォームによってアップロードが許可されているファイル拡張子(appsettings.jsonの'FileExtensionsWhiteList'に加えて)", + "title": "ホワイトリスト" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "メインメニューの永続化された状態", + "title": "メインメニューの永続化された状態" + } + }, + "Language": { + "description": "デフォルトの言語(ISO 639-1の2文字コード、大文字小文字を区別しない)。例:en, de", + "title": "言語" + }, + "RegionalFormat": { + "description": "デフォルトの地域フォーマット(CLDRロケールコード、区切り文字としてダッシュまたはアンダースコアを使用、大文字小文字を区別しない)。例:en, en_US, sr_Cyrl, sr_Cyrl_RS", + "title": "地域フォーマット" + }, + "TimeZone": { + "description": "デフォルトのタイムゾーン(IANAタイムゾーン名[tzデータベース]、データベースと完全に一致、大文字小文字を区別する)。例:America/New_York, Europe/Moscow", + "title": "タイムゾーン" + }, + "UseTimeAgo": { + "description": "trueに設定すると(デフォルト)、可能な限り'数秒前'形式で日付を表示します", + "title": "可能な場合は時間経過形式を使用" + }, + "FullDateThreshold": { + "description": "時間経過形式は、一定の時間単位後に完全な日付形式に切り替わります", + "title": "完全な日付のしきい値" + }, + "FullDateThresholdUnit": { + "description": "完全な日付のしきい値の単位", + "title": "完全な日付のしきい値の単位" + }, + "Customization": { + "description": "マネージャーUIのパーソナライゼーション設定を含むJSON", + "title": "マネージャーUIのカスタマイズ" + }, + "ShowMeridian": { + "description": "時間の午前/午後表示を表示", + "title": "時間の午前/午後表示" + } + }, + "Cache": { + "Enabled": { + "description": "この設定により、プラットフォームアプリケーション全体のキャッシュをグローバルに有効または無効にできます", + "title": "キャッシュをグローバルに有効または無効にする" + }, + "AbsoulteExpiration": { + "description": "キャッシュされたデータがキャッシュに保存される最大時間を指定します。形式:[-][d.]hh:mm:ss[.fffffff]", + "title": "キャッシュ内のオブジェクトのグローバルな有効期間" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "アカウントステータス", + "description": "アカウントステータスの変更" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Common.json new file mode 100644 index 00000000000..24f4d666daa --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "Dodaj", + "activate": "Aktywuj", + "assign": "Przypisz", + "cancel": "Anuluj", + "clear": "Wyczyść", + "clear-all": "Wyczyść wszystko", + "clone": "Klonuj", + "close": "Zamknij", + "confirm": "Potwierdź", + "copy-link": "Kopiuj link", + "copy": "Kopiuj", + "create": "Utwórz", + "cut": "Wytnij", + "delete": "Usuń", + "add-all": "Dodaj wszystko", + "remove-all": "Usuń wszystko", + "download": "Pobierz", + "edit": "Edytuj", + "export": "Eksportuj", + "generate": "Generuj", + "import": "Importuj", + "import-sample-data": "Importuj przykładowe dane", + "install": "Zainstaluj", + "manage": "Zarządzaj", + "more": "Więcej", + "no": "Nie", + "new-folder": "Nowy folder", + "new-license": "Odnów licencję", + "ok": "OK", + "paste": "Wklej", + "pick-selected": "Wybierz zaznaczone", + "preview": "Podgląd", + "open-browser": "Otwórz w przeglądarce", + "redo": "Ponów", + "refresh": "Odśwież", + "remove": "Usuń", + "reset": "Resetuj", + "restart": "Uruchom ponownie", + "save": "Zapisz", + "send": "Wyślij", + "select-all": "Zaznacz wszystko", + "set-to-default": "Ustaw domyślne", + "start-export": "Rozpocznij eksport", + "settings": "Ustawienia", + "sign-out": "Wyloguj", + "undo": "Cofnij", + "uninstall": "Odinstaluj", + "unselect-all": "Odznacz wszystko", + "update": "Aktualizuj", + "upload": "Prześlij", + "yes": "Tak", + "add-new-property": "Dodaj nową właściwość", + "manage-type-properties": "Typy właściwości", + "manage-profile": "Zarządzaj profilem", + "minimize": "Minimalizuj", + "maximize": "Maksymalizuj", + "stop-sending": "Zatrzymaj wysyłanie", + "set-active": "Ustaw jako aktywne", + "reject-user": "Odrzuć użytkownika", + "change-password": "Zmień hasło", + "unlock-account": "Odblokuj konto", + "lock-account": "Zablokuj konto", + "today": "Dzisiaj", + "time": "Czas", + "now": "Teraz", + "date": "Data", + "see-details": "Zobacz szczegóły", + "dismiss": "Odrzuć", + "hide-empty-property-values": "Ukryj puste wartości", + "show-empty-property-values": "Pokaż puste wartości", + "titles": { + "refresh": "Odśwież", + "new-folder": "Nowy folder", + "upload": "Prześlij" + } + }, + "list": { + "no-data": "Brak danych", + "count": "Liczba", + "loading": "Ładowanie...", + "item-not-found": "Błąd: Nie znaleziono" + }, + "placeholders": { + "n-a": "Nie dotyczy", + "no-file": "Wybierz plik", + "search-keyword": "Szukaj...", + "select-value": "Wybierz wartość", + "select-values": "Wybierz wartości" + }, + "dialogs": { + "delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane elementy?" + } + }, + "properties": { + "short-text": { + "title": "Krótki tekst", + "description": "Wartości tekstowe poniżej 1024 znaków" + }, + "long-text": { + "title": "Długi tekst", + "description": "Nieograniczony tekst bez limitu rozmiaru" + }, + "integer": { + "title": "Liczba całkowita", + "description": "Liczba całkowita" + }, + "decimal": { + "title": "Liczba dziesiętna", + "description": "Liczba dziesiętna z precyzją 18 i skalą 4" + }, + "date-time": { + "title": "Data i czas", + "description": "Wybierz datę" + }, + "boolean": { + "title": "Wartość logiczna", + "description": "Typ przełącznika" + }, + "html": { + "title": "HTML", + "description": "Znaczniki HTML" + }, + "undefined": { + "title": "Niezdefiniowane" + }, + "image": { + "title": "Obraz", + "description": "Typ obrazu" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "Wprowadź krótki tekst", + "secure-string": "Wprowadź tekst tajny", + "email": "Wprowadź email", + "url": "Wprowadź URL", + "long-text": "Wprowadź długi tekst", + "integer": "Wprowadź liczbę całkowitą", + "number": "Wprowadź liczbę dziesiętną", + "date-time": "Wybierz datę", + "short-text-multivalue": "Dodaj wartość", + "integer-multivalue": "Dodaj liczbę całkowitą", + "number-multivalue": "Dodaj liczbę dziesiętną", + "short-text-dictionary": "Wybierz wartość", + "short-text-dictionary-multivalue": "Wybierz wartość", + "short-text-multilang": "Wprowadź wartość", + "long-text-multilang": "Wprowadź wartość", + "short-text-multivalue-multilang": "Dodaj wartość", + "short-text-dictionary-multilang": "Wybierz wartość", + "short-text-dictionary-multivalue-multilang": "Wybierz wartość", + "long-text-dictionary-multivalue-multilang": "Wybierz wartość" + } + }, + "short-text-input": { + "placeholder": "Wprowadź wartość", + "required": "To pole jest wymagane", + "maxLength": "To pole nie może zawierać więcej niż {{number}} znaków" + }, + "validators": { + "uriWithoutQuery": { + "error": "Nieprawidłowy format URI. Upewnij się, że URI nie zawiera parametrów zapytania" + } + }, + "errors": { + "generic-error": "Błąd", + "400": "Nieprawidłowe żądanie", + "401": "Brak autoryzacji", + "403": "Zabronione", + "404": "Nie znaleziono", + "405": "Metoda niedozwolona", + "406": "Nie do przyjęcia", + "407": "Wymagane uwierzytelnienie proxy", + "408": "Przekroczony czas żądania", + "409": "Konflikt", + "429": "Zbyt wiele żądań", + "500": "Wewnętrzny błąd serwera", + "501": "Nie zaimplementowano", + "502": "Błąd bramy", + "503": "Usługa niedostępna", + "504": "Przekroczony czas bramy" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..341c6bbd416 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "Afganistan", + "EGY": "Egipt", + "ALA": "Wyspy Alandzkie", + "ALB": "Albania", + "DZA": "Algieria", + "ASM": "Samoa Amerykańskie", + "VIR": "Wyspy Dziewicze Stanów Zjednoczonych", + "AND": "Andora", + "AGO": "Angola", + "AIA": "Anguilla", + "ATA": "Antarktyda (specjalny status na mocy Traktatu Antarktycznego)", + "ATG": "Antigua i Barbuda", + "GNQ": "Gwinea Równikowa", + "ARG": "Argentyna", + "ARM": "Armenia", + "ABW": "Aruba", + "AZE": "Azerbejdżan", + "ETH": "Etiopia", + "AUS": "Australia", + "BHS": "Bahamy", + "BHR": "Bahrajn", + "BGD": "Bangladesz", + "BRB": "Barbados", + "BLR": "Białoruś", + "BEL": "Belgia", + "BLZ": "Belize", + "BEN": "Benin", + "BMU": "Bermudy", + "BTN": "Bhutan", + "BOL": "Boliwia", + "BES": "Bonaire, Sint Eustatius i Saba", + "BIH": "Bośnia i Hercegowina", + "BWA": "Botswana", + "BVT": "Wyspa Bouveta", + "BRA": "Brazylia", + "VGB": "Brytyjskie Wyspy Dziewicze", + "IOT": "Brytyjskie Terytorium Oceanu Indyjskiego", + "BRN": "Brunei", + "BGR": "Bułgaria", + "BFA": "Burkina Faso", + "BDI": "Burundi", + "CHL": "Chile", + "CHN": "Chińska Republika Ludowa", + "COK": "Wyspy Cooka", + "CRI": "Kostaryka", + "CUW": "Curaçao", + "DNK": "Dania", + "DEU": "Niemcy", + "DMA": "Dominika", + "DOM": "Dominikana", + "DJI": "Dżibuti", + "ECU": "Ekwador", + "CIV": "Wybrzeże Kości Słoniowej", + "SLV": "Salwador", + "ERI": "Erytrea", + "EST": "Estonia", + "SWZ": "Eswatini", + "FLK": "Falklandy", + "FRO": "Wyspy Owcze", + "FJI": "Fidżi", + "FIN": "Finlandia", + "FRA": "Francja", + "GUF": "Gujana Francuska", + "PYF": "Polinezja Francuska", + "ATF": "Francuskie Terytoria Południowe i Antarktyczne", + "GAB": "Gabon", + "GMB": "Gambia", + "GEO": "Gruzja", + "GHA": "Ghana", + "GIB": "Gibraltar", + "GRD": "Grenada", + "GRC": "Grecja", + "GRL": "Grenlandia", + "GLP": "Gwadelupa", + "GUM": "Guam", + "GTM": "Gwatemala", + "GGY": "Guernsey", + "GIN": "Gwinea", + "GNB": "Gwinea Bissau", + "GUY": "Gujana", + "HTI": "Haiti", + "HMD": "Wyspy Heard i McDonalda", + "HND": "Honduras", + "HKG": "Hongkong", + "IND": "Indie", + "IDN": "Indonezja", + "IMN": "Wyspa Man", + "IRQ": "Irak", + "IRN": "Iran", + "IRL": "Irlandia", + "ISL": "Islandia", + "ISR": "Izrael", + "ITA": "Włochy", + "JAM": "Jamajka", + "JPN": "Japonia", + "YEM": "Jemen", + "JEY": "Jersey", + "JOR": "Jordania", + "CYM": "Kajmany", + "KHM": "Kambodża", + "CMR": "Kamerun", + "CAN": "Kanada", + "CPV": "Republika Zielonego Przylądka", + "KAZ": "Kazachstan", + "QAT": "Katar", + "KEN": "Kenia", + "KGZ": "Kirgistan", + "KIR": "Kiribati", + "CCK": "Wyspy Kokosowe", + "COL": "Kolumbia", + "COM": "Komory", + "COD": "Demokratyczna Republika Konga", + "COG": "Republika Konga", + "PRK": "Korea Północna", + "KOR": "Korea Południowa", + "HRV": "Chorwacja", + "CUB": "Kuba", + "KWT": "Kuwejt", + "LAO": "Laos", + "LSO": "Lesotho", + "LVA": "Łotwa", + "LBN": "Liban", + "LBR": "Liberia", + "LBY": "Libia", + "LIE": "Liechtenstein", + "LTU": "Litwa", + "LUX": "Luksemburg", + "MAC": "Makau", + "MDG": "Madagaskar", + "MWI": "Malawi", + "MYS": "Malezja", + "MDV": "Malediwy", + "MLI": "Mali", + "MLT": "Malta", + "MAR": "Maroko", + "MHL": "Wyspy Marshalla", + "MTQ": "Martynika", + "MRT": "Mauretania", + "MUS": "Mauritius", + "MYT": "Majotta", + "MEX": "Meksyk", + "FSM": "Mikronezja", + "MDA": "Mołdawia", + "MCO": "Monako", + "MNG": "Mongolia", + "MNE": "Czarnogóra", + "MSR": "Montserrat", + "MOZ": "Mozambik", + "MMR": "Mjanma", + "NAM": "Namibia", + "NRU": "Nauru", + "NPL": "Nepal", + "NCL": "Nowa Kaledonia", + "NZL": "Nowa Zelandia", + "NIC": "Nikaragua", + "NLD": "Holandia", + "NER": "Niger", + "NGA": "Nigeria", + "NIU": "Niue", + "MNP": "Mariany Północne", + "MKD": "Macedonia Północna", + "NFK": "Norfolk", + "NOR": "Norwegia", + "OMN": "Oman", + "AUT": "Austria", + "TLS": "Timor Wschodni", + "PAK": "Pakistan", + "PSE": "Palestyna", + "PLW": "Palau", + "PAN": "Panama", + "PNG": "Papua-Nowa Gwinea", + "PRY": "Paragwaj", + "PER": "Peru", + "PHL": "Filipiny", + "PCN": "Pitcairn", + "POL": "Polska", + "PRT": "Portugalia", + "PRI": "Portoryko", + "REU": "Reunion", + "RWA": "Rwanda", + "ROU": "Rumunia", + "RUS": "Rosja", + "SLB": "Wyspy Salomona", + "BLM": "Saint-Barthélemy", + "MAF": "Saint-Martin (część francuska)", + "ZMB": "Zambia", + "WSM": "Samoa", + "SMR": "San Marino", + "STP": "Wyspy Świętego Tomasza i Książęca", + "SAU": "Arabia Saudyjska", + "SWE": "Szwecja", + "CHE": "Szwajcaria", + "SEN": "Senegal", + "SRB": "Serbia", + "SYC": "Seszele", + "SLE": "Sierra Leone", + "ZWE": "Zimbabwe", + "SGP": "Singapur", + "SXM": "Sint Maarten (część holenderska)", + "SVK": "Słowacja", + "SVN": "Słowenia", + "SOM": "Somalia", + "ESP": "Hiszpania", + "LKA": "Sri Lanka", + "SHN": "Święta Helena, Wyspa Wniebowstąpienia i Tristan da Cunha", + "KNA": "Saint Kitts i Nevis", + "LCA": "Saint Lucia", + "SPM": "Saint-Pierre i Miquelon", + "VCT": "Saint Vincent i Grenadyny", + "ZAF": "Republika Południowej Afryki", + "SDN": "Sudan", + "SGS": "Georgia Południowa i Sandwich Południowy", + "SSD": "Sudan Południowy", + "SUR": "Surinam", + "SJM": "Svalbard i Jan Mayen", + "SYR": "Syria", + "TJK": "Tadżykistan", + "TWN": "Tajwan", + "TZA": "Tanzania", + "THA": "Tajlandia", + "TGO": "Togo", + "TKL": "Tokelau", + "TON": "Tonga", + "TTO": "Trynidad i Tobago", + "TCD": "Czad", + "CZE": "Czechy", + "TUN": "Tunezja", + "TUR": "Turcja", + "TKM": "Turkmenistan", + "TCA": "Turks i Caicos", + "TUV": "Tuvalu", + "UGA": "Uganda", + "UKR": "Ukraina", + "HUN": "Węgry", + "UMI": "Dalekie Wyspy Mniejsze Stanów Zjednoczonych", + "URY": "Urugwaj", + "UZB": "Uzbekistan", + "VUT": "Vanuatu", + "VAT": "Watykan", + "VEN": "Wenezuela", + "ARE": "Zjednoczone Emiraty Arabskie", + "USA": "Stany Zjednoczone", + "GBR": "Wielka Brytania", + "VNM": "Wietnam", + "WLF": "Wallis i Futuna", + "CXR": "Wyspa Bożego Narodzenia", + "ESH": "Sahara Zachodnia", + "CAF": "Republika Środkowoafrykańska", + "CYP": "Cypr" + }, + "CAN": { + "AB": "Alberta", + "BC": "Kolumbia Brytyjska", + "MB": "Manitoba", + "NB": "Nowy Brunszwik", + "NL": "Nowa Fundlandia i Labrador", + "NT": "Terytoria Północno-Zachodnie", + "NS": "Nowa Szkocja", + "NU": "Nunavut", + "ON": "Ontario", + "PE": "Wyspa Księcia Edwarda", + "QC": "Quebec", + "SK": "Saskatchewan", + "YT": "Jukon" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..24e31350334 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pl.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "Strona główna", + "browse": "Przeglądaj", + "configuration": "Konfiguracja", + "notifications": "Powiadomienia", + "more": "Więcej", + "settings": "Ustawienia", + "dynamic-properties": "Właściwości dynamiczne", + "security": "Bezpieczeństwo", + "modules": "Moduły", + "export-import": "Eksport i Import", + "user-profile": "Profil użytkownika", + "assets": "Zasoby", + "toggle-favorites": "Shift + Spacja, aby przełączyć ulubione", + "help": "Pomoc" + }, + "navigation": { + "back": "Wstecz" + }, + "blades": { + "system-info": { + "title": "Informacje o platformie", + "labels": { + "clr-version": "Wersja CLR", + "environment-name": "Tryb środowiska", + "is-64-bit-os": "System operacyjny 64-bitowy", + "is-64-bit-process": "Proces 64-bitowy", + "database-provider": "Dostawca bazy danych" + } + }, + "asset-list": { + "title": "Zarządzanie zasobami", + "bread-crumb-top": "Wszystkie zasoby", + "labels": { + "picture": "Obraz", + "name": "Nazwa", + "size": "Rozmiar", + "modified": "Zmodyfikowano", + "actions": "Akcje", + "group": "Grupa", + "language": "Język" + } + }, + "asset-upload": { + "title": "Przesyłanie zasobów", + "labels": { + "select-files": "Wybierz pliki", + "drag-note": "Przeciągnij i upuść pliki tutaj", + "progress": "Postęp", + "asset-uploaded": "Zasób(y) przesłane" + }, + "placeholders": { + "image-url": "Wklej adres URL pliku tutaj" + } + }, + "operation-list": { + "labels": { + "login": "Login", + "details": "Szczegóły", + "time": "Czas" + } + }, + "dynamicObject-list": { + "title": "Typy obiektów dynamicznych", + "subtitle": "Wybierz typ obiektu do zarządzania właściwościami dynamicznymi", + "labels": { + "no-objects": "Żadne obiekty nie obsługują jeszcze właściwości dynamicznych" + } + }, + "dynamicProperty-detail": { + "title": "Zarządzaj właściwością", + "subtitle": "Zarządzaj właściwością", + "subtitle-new": "Nowa właściwość", + "labels": { + "property-name": "Nazwa właściwości", + "required": "Wymagane", + "multivalue": "Wielowartościowe", + "multilingual": "Wielojęzyczne", + "dictionary": "Słownik", + "description": "Opis", + "display-order": "Kolejność wyświetlania", + "display-name": "Nazwa wyświetlana", + "value-type": "Typ wartości", + "dictionary-values": "Wartości słownikowe", + "manage-dictionary": "Zarządzaj słownikiem" + }, + "placeholders": { + "description": "Wprowadź opis właściwości", + "display-name": "Wprowadź nazwę wyświetlaną...", + "display-order": "Kolejność wyświetlania" + }, + "validations": { + "multivalue": "Właściwość wielowartościowa może mieć tylko typ wartości ShortText, Integer lub Decimal", + "multilingual": "Tylko tekst lub wartość HTML może być wielojęzyczna", + "dictionary": "Obsługiwane są tylko słowniki o typie wartości ShortText" + } + }, + "dynamicProperty-list": { + "subtitle": "Zarządzaj właściwościami dynamicznymi", + "labels": { + "no-properties": "Brak właściwości dynamicznych" + } + }, + "notifications-menu": { + "subtitle": "Praca z systemem powiadomień" + }, + "property-dictionary": { + "title": "Wartości słownikowe", + "subtitle": "Zarządzaj wartościami słownikowymi", + "labels": { + "edit-value": "Edytuj wartość", + "new-value": "Nowa wartość", + "dictionary-name": "Nazwa wpisu słownikowego", + "localized-values": "Wartości zlokalizowane", + "current-values": "Aktualne wartości", + "name": "Nazwa", + "values": "Wartości" + }, + "validations": { + "dictionary-name-required": "Wymagane", + "dictionary-name": "Znaleziono duplikat nazwy", + "localized-values-required": "Wymagane", + "localized-values": "Znaleziono duplikat nazwy", + "dictionary": "Obsługiwane są tylko słowniki o typie wartości ShortText" + }, + "placeholders": { + "dictionary-name": "Wprowadź nazwę", + "localized-values": "Wprowadź wartość" + } + }, + "propertyValue-list": { + "title": "Właściwości dynamiczne", + "subtitle": "", + "labels": { + "header": "Wartości właściwości", + "no-properties": "Ten obiekt nie ma jeszcze żadnych właściwości dynamicznych. Kliknij 'Typy właściwości' i utwórz jakieś właściwości. Zamknij i otwórz ponownie widok bieżącego obiektu, aby załadować właściwości dynamiczne" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Wymagane" + }, + "labels": { + "new-value": "Nowa wartość", + "current-values": "Aktualne wartości", + "values": "Wartości" + }, + "placeholders": { + "value": "Wprowadź wartość" + } + }, + "export-main": { + "title": "Eksport danych", + "labels": { + "platform-entries": "Wpisy platformy", + "choose-modules": "Wybierz moduły do eksportu", + "download-url": "URL do pobrania", + "errors": "Błędy", + "start": "Start", + "end": "Koniec" + }, + "menu": { + "security": { + "title": "Bezpieczeństwo", + "description": "Konta i role" + }, + "binary": { + "title": "Dane binarne", + "description": "Dane binarne" + }, + "settings": { + "title": "Ustawienia", + "description": "Ustawienia platformy" + }, + "dynamic-props": { + "title": "Właściwości dynamiczne", + "description": "Właściwości dynamiczne platformy" + } + } + }, + "import-main": { + "title": "Import danych", + "labels": { + "start-import": "Rozpocznij import", + "select-file": "Wybierz plik .zip do importu. Plik musi być wygenerowany przez eksport danych Commerce Manager", + "drag-note": "Przeciągnij i upuść plik .zip do importu. Plik musi być wygenerowany przez eksport danych Commerce Manager", + "upload-failed": "Przesyłanie nie powiodło się", + "upload-progress": "Postęp przesyłania", + "import-progress": "Postęp importu", + "import-finished": "Import zakończony", + "import-data-information": "Informacje o importowanych danych", + "author": "Autor", + "data-file-created": "Plik danych utworzony", + "created-platform-version": "Utworzono w wersji platformy", + "platform-entries": "Wpisy platformy", + "choose-modules": "Wybierz moduły do importu", + "no-data": "Brak danych", + "errors": "Błędy", + "start": "Start", + "end": "Koniec" + }, + "menu": { + "security": { + "title": "Bezpieczeństwo", + "description": "Konta i role" + }, + "binary": { + "title": "Dane binarne", + "description": "Dane binarne" + }, + "settings": { + "title": "Ustawienia", + "description": "Ustawienia platformy" + }, + "dynamic-props": { + "title": "Właściwości dynamiczne", + "description": "Właściwości dynamiczne platformy" + } + } + }, + "exportImport-main": { + "title": "Eksport i import danych", + "menu": { + "export": { + "title": "Eksport", + "description": "Dane zostaną zapisane do pliku, aby można je było później zaimportować" + }, + "import": { + "title": "Import", + "description": "Importuj dane z wyeksportowanego pliku" + } + } + }, + "resolve-result": { + "title": "Podgląd wyniku", + "labels": { + "subject": "Temat", + "body": "Treść" + } + }, + "module-settings-detail": { + "title": "Ustawienia modułu" + }, + "module-wizard-progress-step": { + "title-install": "Instalacja modułu", + "title-update": "Aktualizacja modułu", + "title-uninstall": "Odinstalowanie modułu", + "labels": { + "start": "Start", + "end": "Koniec", + "progress-messages": "Komunikaty o postępie", + "process-completed": "Proces instalacji modułu zakończony", + "restart-application": "Uruchom ponownie aplikację teraz lub później" + } + }, + "module-detail": { + "title": "Informacje o module", + "labels": { + "i-accept-the": "Akceptuję", + "license-link": "licencję", + "license": "Licencja", + "agreement": "umowa", + "install-from-file": "Zainstaluj / zaktualizuj moduł z pliku", + "select-module-file": "Prześlij plik modułu (.zip) z zewnętrznego źródła poza centralnym repozytorium modułów", + "upload-progress": "Postęp przesyłania", + "module-info": "Informacje o module", + "title": "Tytuł", + "official": "Oficjalny moduł {{$owner}}", + "owners": "Opracowany przez {{$owner}}", + "author": "Autor", + "authors": "Autorzy", + "id": "ID", + "version": "Wersja", + "project-information": "Informacje o projekcie", + "description": "Opis", + "platform-version": "Wersja platformy", + "dependencies": "Zależności", + "optional-dependencies": "Opcjonalne zależności", + "tags": "Tagi", + "install-version": "Zainstaluj wersję", + "errors": "Błędy" + } + }, + "modules-main": { + "title": "Moduły", + "labels": { + "updates": "Aktualizacje", + "available": "Dostępne", + "installed": "Zainstalowane", + "withErrors": "Błędy", + "advanced": "Zaawansowane" + } + }, + "modules-list": { + "subtitle": "Zarządzanie modułami", + "labels": { + "grouping": "Pokaż pakiety modułów", + "ungrouped": "Inne", + "no-updates": "Nie znaleziono aktualizacji", + "no-modules-part1": "Brak nowych modułów do zainstalowania", + "no-installed-modules": "Nie znaleziono zainstalowanych modułów", + "icon": "Ikona", + "up-to-date": "Moduł jest aktualny", + "update-available": "Dostępna aktualizacja dla tego modułu", + "module": "Moduł", + "version": "Wersja", + "author": "Autor", + "installed": "Zainstalowane moduły", + "manual-install-warning": "Uwaga! Ręcznie zainstalowane moduły nie uruchomią się, ponieważ RefreshProbingFolderOnStart jest ustawione na false" + } + }, + "history": { + "title": "Wydarzenia systemowe", + "subtitle": "Historia wydarzeń", + "labels": { + "type": "Typ", + "title": "Tytuł", + "created": "Utworzono", + "description": "Opis" + } + }, + "historyDetailDefault": { + "title": "Szczegóły wydarzenia", + "subtitle": "Szczegóły wydarzenia", + "labels": { + "start": "Start", + "end": "Koniec", + "elapsed": "Upłynęło", + "errors": "Błędy", + "stats": "Przetworzono {{ processedCount }} z {{ totalCount }} rekordów" + } + }, + "menuHeader": { + "labels": { + "history": "Historia", + "clear-recent": "Wyczyść wszystkie ostatnie" + } + }, + "account-changePassword": { + "labels": { + "title": "Proszę wprowadzić nowe hasło", + "login": "Login", + "force-change-info": "Twoje hasło wygasło. Musisz zmienić hasło, aby kontynuować korzystanie z menedżera", + "current-password": "Obecne hasło", + "new-password": "Nowe hasło", + "repeat-password": "Powtórz nowe hasło", + "cancel": "Anuluj", + "save": "Zmień", + "fail": "Przepraszamy, nie mogliśmy zresetować hasła dla tego użytkownika" + }, + "validations": { + "current-password": "Wymagane", + "new-password": "Stare i nowe hasła są takie same!", + "repeat-password": "Nowe hasła nie pasują do siebie!" + }, + "placeholders": { + "current-password": "Wprowadź obecne hasło", + "new-password": "Wprowadź nowe hasło", + "repeat-password": "Powtórz nowe hasło" + } + }, + "account-resetPassword": { + "subtitle": "Zmień hasło użytkownika", + "labels": { + "new-password": "Nowe hasło", + "repeat-password": "Powtórz hasło", + "force-password-change": "Wymuś zmianę hasła przy następnym logowaniu tego użytkownika" + }, + "validations": { + "repeat-password": "Nowe hasła nie pasują do siebie!", + "invalid-token": "Token resetowania hasła jest nieprawidłowy lub wygasł", + "password-too-weak": "Nowe hasło nie spełnia jednej lub więcej zasad bezpieczeństwa haseł:", + "passwordTooShort": "Hasła muszą mieć co najmniej {{parameter}} znaków", + "passwordRequiresUniqueChars": "Hasła muszą zawierać co najmniej {{parameter}} różnych znaków", + "passwordRequiresLower": "Hasła muszą zawierać co najmniej jedną małą literę ('a'-'z')", + "passwordRequiresUpper": "Hasła muszą zawierać co najmniej jedną wielką literę ('A'-'Z')", + "passwordRequiresDigit": "Hasła muszą zawierać co najmniej jedną cyfrę ('0'-'9')", + "passwordRequiresNonAlphanumeric": "Hasła muszą zawierać co najmniej jeden znak niealfanumeryczny", + "recentPasswordUsed": "Użyłeś tego hasła w przeszłości. Wybierz inne" + }, + "placeholders": { + "new-password": "Wprowadź nowe hasło", + "repeat-password": "Powtórz nowe hasło" + } + }, + "account-detail": { + "title-new": "Nowe konto", + "labels": { + "user-information": "Informacje o użytkowniku", + "is-administrator": "Jest administratorem", + "account-type": "Typ konta", + "login": "Login", + "account-state": "Stan konta", + "account-email": "Email", + "locked-state": "Stan zablokowania", + "status": "Status", + "verified": "Zweryfikowany", + "resend-link": "Wyślij link ponownie", + "link-sent": "Link został wysłany", + "last-login-date": "Data ostatniego logowania" + }, + "placeholders": { + "account-type": "Wybierz ...", + "email": "Wprowadź email", + "user-name": "Wprowadź nazwę użytkownika", + "status": "Wybierz ..." + } + }, + "account-list": { + "title": "Użytkownicy", + "subtitle": "Usługa bezpieczeństwa", + "labels": { + "name": "Nazwa", + "account-type": "Typ konta", + "login": "Login", + "state": "Stan", + "status": "Status" + } + }, + "account-api": { + "labels": { + "api-key": "Klucz API", + "is-active": "jest aktywny" + }, + "placeholders": { + "api-key": "Wprowadź klucz API" + } + }, + "role-detail": { + "subtitle": "Szczegóły roli", + "labels": { + "summary": "Podsumowanie", + "name": "Nazwa", + "description": "Opis", + "assigned-permissions": "Przypisane uprawnienia", + "permission-name": "Nazwa", + "assigned-scopes": "Przypisane zakresy", + "no-permissions-assigned": "Brak przypisanych uprawnień" + }, + "placeholders": { + "name": "Wprowadź nazwę", + "description": "Wprowadź opis" + } + }, + "account-roles": { + "subtitle": "Przypisz role", + "labels": { + "select-roles": "Wybierz role do przypisania", + "no-roles": "Brak ról do przypisania" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "Przypisane role", + "no-assigned": "Brak przypisanych ról" + } + }, + "permission-scopes": { + "subtitle": "Konfiguruj zakresy uprawnień", + "labels": { + "select-bounded-scopes": "Wybierz ograniczone zakresy", + "selected": "Wybrane", + "scope-name": "Nazwa zakresu i parametry", + "no-scopes": "Brak zakresów" + } + }, + "role-permissions": { + "subtitle": "Przypisz uprawnienia", + "labels": { + "select-permissions": "Wybierz uprawnienia do przypisania" + } + }, + "new-role-wizard": { + "title": "Nowa rola", + "labels": { + "summary": "Podsumowanie", + "name": "Nazwa", + "description": "Opis", + "assign-permissions": "Przypisz uprawnienia" + }, + "placeholders": { + "name": "Wprowadź nazwę", + "description": "Wprowadź opis" + } + }, + "role-list": { + "title": "Role", + "subtitle": "Usługa bezpieczeństwa", + "labels": { + "name": "Nazwa" + } + }, + "oauthapps": { + "labels": { + "clientId": "ID klienta", + "displayName": "Nazwa wyświetlana", + "type": "Typ", + "clientSecret": "Sekret klienta", + "assigned-permissions": "Przypisane uprawnienia", + "redirectUris": "URI przekierowania", + "postLogoutRedirectUris": "URI przekierowania po wylogowaniu" + }, + "placeholders": { + "clientId": "Wprowadź ID klienta", + "displayName": "Wprowadź nazwę wyświetlaną", + "type": "Wprowadź typ", + "clientSecret": "Wprowadź sekret klienta" + } + }, + "oauthapps-list": { + "title": "Aplikacje OAuth", + "subtitle": "Usługa bezpieczeństwa" + }, + "oauthapps-detail": { + "title": "Edytuj aplikację OAuth", + "title-new": "Utwórz aplikację OAuth", + "subtitle": "Usługa bezpieczeństwa", + "labels": { + "clientSecret-warning": "Uwaga! Musisz skopiować sekret teraz. Zostanie on ukryty po zamknięciu panelu", + "urls": "URL-e" + }, + "blades": { + "edit-redirectUris": { + "title": "URI przekierowania", + "subtitle": "Zarządzaj URI przekierowania" + }, + "edit-postLogoutRedirectUris": { + "title": "URI przekierowania po wylogowaniu", + "subtitle": "Zarządzaj URI przekierowania po wylogowaniu" + } + } + }, + "login": { + "labels": { + "sign-in": "Zaloguj się do Menedżera {{title}}", + "login": "Login", + "password": "Hasło", + "remember-me": "Zapamiętaj mnie", + "external-sign-in": "Zaloguj się przez {{displayName}}", + "forgot-password": "Zapomniałeś hasła?", + "log-in": "Zaloguj się", + "log-in-placeholder": "Wprowadź swój email lub nazwę użytkownika", + "password-placeholder": "Wprowadź swoje hasło", + "azure-log-in-label": "Zaloguj się do panelu administracyjnego przez Azure", + "password-log-in-type": "Użytkownik systemowy", + "or": "lub", + "signing-in": "Logowanie..." + } + }, + "forgotpassword": { + "title": "Zapomniałeś hasła?", + "labels": { + "login": "Login lub email", + "description": "Wyślemy Ci email z instrukcjami jak zresetować hasło", + "success": "Email z instrukcjami został do Ciebie wysłany", + "fail": "Przepraszamy, nie mogliśmy zresetować hasła dla tego użytkownika", + "back": "Powrót", + "submit": "Wyślij", + "time-limit": "Możesz spróbować ponownie za {{countdown}}", + "time-limit-end": "Możesz spróbować ponownie teraz" + }, + "placeholders": { + "login-or-email": "Wprowadź login lub email" + } + }, + "access-denied": { + "title": "Odmowa dostępu", + "labels": { + "message": "Nie masz dostępu do tego zasobu. Skontaktuj się z administratorem", + "button": "Zaloguj się z innymi danymi" + } + }, + "resetpassword": { + "title": "Reset hasła", + "labels": { + "success": "Twoje hasło zostało zresetowane", + "fail": "Przepraszamy, nie mogliśmy zresetować hasła dla tego użytkownika", + "submit": "Resetuj", + "log-in": "Zaloguj się" + } + }, + "license": { + "title": "Aktualna licencja", + "title-new": "Aktywacja nowej licencji", + "license-info": "Informacje o licencji", + "license-activation": "Aktywacja licencji", + "labels": { + "info-running-no-license": "Ta instancja Virto Commerce działa na", + "info-open-source-license": "licencji Open Source Community", + "info0": "Uzyskanie lub odnowienie licencji:", + "info1": "Wyślij ", + "info2": "Przetworzymy Twoją prośbę i skontaktujemy się z Tobą wkrótce", + "info3": "Po otrzymaniu \"Kodu Aktywacyjnego\" i/lub pliku Licencji, wypełnij jedno z pól aktywacyjnych poniżej", + "info4": "System wyświetli nowe informacje o licencji. Przejrzyj je i kliknij \"Aktywuj\", aby potwierdzić", + "customer": "Licencja wydana dla", + "type": "Typ", + "expiration": "Wygaśnięcie", + "email": "Email klienta", + "request-license": "Formularz prośby o licencję", + "code-descr": "Wprowadź otrzymany \"Kod Aktywacyjny\" licencji i naciśnij [Enter]. To najszybsza metoda aktywacji licencji. (Wymaga połączenia z internetem)", + "file-descr": "Opcjonalnie, dostarcz otrzymany plik Licencji. (Aktywacja offline)", + "upload-progress": "Postęp przesyłania", + "errors": "Błąd aktywacji" + }, + "placeholders": { + "code": "Wprowadź kod aktywacyjny" + } + }, + "new-account-wizard": { + "labels": { + "login": "Login", + "email": "Email", + "password": "Hasło", + "repeat-password": "Powtórz hasło", + "assign-roles": "Przypisz role" + }, + "placeholders": { + "email": "Wprowadź email", + "login": "Wprowadź login", + "password": "Wprowadź nowe hasło", + "repeat-password": "Powtórz nowe hasło" + }, + "validations": { + "repeat-password": "Wprowadzone hasła nie pasują do siebie!", + "password-too-weak": "Wprowadzone hasło nie spełnia jednej lub więcej zasad bezpieczeństwa haseł:" + } + }, + "security-main": { + "title": "Bezpieczeństwo", + "subtitle": "Zarządzanie użytkownikami" + }, + "entitySetting-list": { + "title": "Ustawienia" + }, + "setting-dictionary": { + "subtitle": "Zarządzaj wartościami słownika", + "labels": { + "new-value": "Proszę wprowadzić wartość", + "current-values": "Aktualne wartości", + "value": "Wartość" + }, + "validations": { + "new-value-required": "Wymagane", + "new-value": "Znaleziono duplikat wartości" + }, + "placeholders": { + "new-value": "Proszę wprowadzić wartość" + } + }, + "settings-detail": { + "title": "Wartości ustawień", + "hide-description": "Ukryj" + }, + "settingGroup-list": { + "title": "Ustawienia", + "bread-crumb-top": "Wszystkie ustawienia" + }, + "settings-uploader": { + "drag-drop-comment": "Przeciągnij i upuść plik tutaj", + "or": "lub", + "browse-your-files": "przeglądaj swoje pliki" + }, + "localizable-setting-value-list": { + "subtitle": "Zarządzaj wartościami słownika" + }, + "localizable-setting-value-details": { + "title": "Edytuj wartość słownika", + "alias": "Wartość systemowa" + }, + "user-profile": { + "title": "Profil użytkownika", + "labels": { + "language": "Język", + "language-description": "Język wyświetlania. Wyczyść, aby użyć języka przeglądarki lub domyślnego", + "regional-format": "Format regionalny", + "regional-format-description": "Format regionalny liczb, waluty, daty i czasu. Wyczyść, aby użyć formatu przeglądarki lub domyślnego", + "time-zone": "Strefa czasowa", + "time-zone-description": "Aktualna strefa czasowa użytkownika w formacie IANA (baza danych tz). Wybierz najbliższe miasto w twojej strefie czasowej. Wyczyść, aby użyć strefy czasowej przeglądarki lub domyślnej", + "use-time-ago": "Użyj formatu 'czas temu', jeśli to możliwe", + "full-date-threshold-group": "Użyj pełnego formatu daty dla dat wcześniejszych niż...", + "full-date-threshold-description": "Wartość liczbowa jednostek czasu", + "full-date-threshold-unit-description": "Jednostka czasu (np. godziny lub lata)" + }, + "placeholders": { + "full-date-threshold": "Wprowadź wartość progu", + "full-date-threshold-unit": "Wybierz jednostkę progu" + }, + "full-date-threshold-units": { + "Never": "Nigdy", + "Seconds": "Sekundy", + "Minutes": "Minuty", + "Hours": "Godziny", + "Days": "Dni", + "Weeks": "Tygodnie", + "Months": "Miesiące", + "Quarters": "Kwartały", + "Years": "Lata" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "Wybierz typ przykładowych danych", + "size": "rozmiar", + "version": "wersja" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "Inicjalizacja przykładowych danych", + "starting-initialization": "Rozpoczynanie inicjalizacji przykładowych danych...", + "errors": "Błędy", + "start": "Start", + "end": "Koniec" + } + }, + "licensing": { + "license-absent": "Licencja społecznościowa", + "license-present": "Licencja {{type}}, wygasa {{expirationDate | amParse | date}}", + "community": "Używasz edycji społecznościowej, kliknij aby poprosić o licencję komercyjną", + "expired": "Twoja licencja wygasła {{expirationDate | amParse | date}}, proszę odnowić", + "purchase": "Kup", + "renew": "Odnów", + "expiration-date": "Data wygaśnięcia" + }, + "password-expiry": { + "expire-days": "Aby chronić swoje konto, musisz zmienić hasło za {{count}} dni. ", + "expire-today": "Aby chronić swoje konto, musisz zmienić hasło dzisiaj. ", + "change-link": "Zmień teraz" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "Automatyczna instalacja modułów", + "loading": "Pobieranie informacji o modułach...", + "finished": "Instalacja zakończona. Kliknij Restart, aby kontynuować", + "start": "Start", + "end": "Koniec" + } + } + }, + "widgets": { + "operations": { + "title": "Zmiany", + "blade-subtitle": "Historia zmian" + }, + "dynamicProperty": { + "title": "Właściwości dynamiczne" + }, + "entitySettings": { + "title": "Ustawienia" + }, + "accountApi": { + "title": "Klucz API", + "blade-subtitle": "Klucz API" + }, + "accountRoles": { + "title": "Role", + "blade-subtitle": "Zarządzaj rolami" + } + }, + "dialogs": { + "folders-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane foldery lub pliki?" + }, + "properties-save": { + "title": "Zapisz zmiany", + "message": "Właściwości zostały zmodyfikowane. Czy chcesz zapisać zmiany?" + }, + "notification-template-save": { + "title": "Zapisz zmiany", + "message": "Szablon powiadomienia został zmodyfikowany. Czy chcesz zapisać zmiany?" + }, + "role-save": { + "title": "Zapisz zmiany", + "message": "Rola została zmodyfikowana. Czy chcesz zapisać zmiany?" + }, + "roles-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane role?" + }, + "account-save": { + "title": "Zapisz zmiany", + "message": "Konto zostało zmodyfikowane. Czy chcesz zapisać zmiany?" + }, + "account-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane konta?" + }, + "oauthapps-save": { + "title": "Zapisz zmiany", + "message": "Aplikacja OAuth została zmodyfikowana. Czy chcesz zapisać zmiany?" + }, + "oauthapps-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybraną aplikację OAuth?" + }, + "dynamic-property-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć tę właściwość dynamiczną?" + }, + "settings-value-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane wartości?" + }, + "settings-save": { + "title": "Zapisz zmiany", + "message": "Ustawienia zostały zmodyfikowane. Czy chcesz zapisać zmiany?" + }, + "settings-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Ustawienia zostały zmodyfikowane. Czy chcesz zapisać zmiany?" + }, + "localizable-setting-value-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć wybrane wartości słownika?" + }, + "localizable-setting-value-save": { + "title": "Zapisz zmiany", + "message": "Ta wartość słownika została zmodyfikowana. Czy chcesz zapisać zmiany?" + }, + "email-sending-success": { + "title": "Wysyłanie udane", + "message": "Email został wysłany pomyślnie!" + }, + "email-send-error": { + "title": "Błąd w wysyłaniu", + "message": "Email nie został wysłany! Błąd: {{error}}" + }, + "dictionary-items-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć {{quantity}} wybranych elementów słownika?" + }, + "module-action": { + "title-install": "Potwierdzenie instalacji", + "title-update": "Potwierdzenie aktualizacji", + "title-delete": "Potwierdzenie odinstalowania", + "message0-install": "Zamierzasz zainstalować:", + "message0-update": "Zamierzasz zaktualizować:", + "message0-delete": "Zamierzasz odinstalować:", + "message1-install": "Następujące zależności zostaną również zainstalowane:", + "message1-delete": "Następujące zależne moduły zostaną również odinstalowane:", + "message2-install": "Zainstalować wybrane elementy i zależności?", + "message2-update": "Zaktualizować wybrane elementy i zależności?", + "message2-delete": "Odinstalować ten i WSZYSTKIE zależne moduły?" + }, + "module-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz odinstalować ten moduł?" + }, + "api-key-delete": { + "title": "Potwierdzenie usunięcia", + "message": "Czy na pewno chcesz usunąć ten klucz API?" + }, + "app-restart": { + "title": "Zamknięcie aplikacji", + "message": "Uruchom ponownie aplikację, aby zastosować zmiany. W zależności od twojego serwisu hostingowego, aplikacja może uruchomić się ponownie automatycznie lub może być konieczne ręczne uruchomienie. Czy na pewno chcesz teraz zamknąć aplikację?" + }, + "error-details": { + "title": "Szczegóły błędu" + }, + "impersonate-no-url": { + "title": "Logowanie w imieniu", + "message": "URL sklepu nie został dodany do ustawień sklepu. Skontaktuj się z administratorem" + }, + "asset-upload-error": { + "title": "Błąd przesyłania", + "message": "Wybierz folder! Nie można przesłać pliku do katalogu głównego!" + }, + "run-import": { + "title": "Potwierdzenie importu", + "message": "Czy na pewno chcesz zaimportować przykładowe dane?" + }, + "create-folder": { + "title": "Nazwa folderu musi być zgodna z następującymi zasadami nazewnictwa:\n Nazwa folderu musi mieć od 3 do 63 znaków.\n Nazwa folderu musi zaczynać się od litery lub cyfry i może zawierać tylko litery, cyfry i myślnik (-).\n Każdy myślnik (-) musi być bezpośrednio poprzedzony i następowany przez literę lub cyfrę; kolejne myślniki są niedozwolone.\n Wszystkie litery w nazwie folderu muszą być małe" + }, + "storefront-cache-reset-successfully": { + "title": "Reset pamięci podręcznej", + "message": "Pamięć podręczna aplikacji frontendowej została pomyślnie zresetowana" + } + }, + "commands": { + "login-on-behalf": "Zaloguj się w imieniu", + "reset-storefront-cache": "Zresetuj pamięć podręczną" + } + }, + "permissions": { + "platform:asset:access": "Wyświetl zasoby w menu głównym", + "platform:asset:delete": "Usuń zasoby platformy", + "platform:asset:update": "Zmień zasoby platformy", + "platform:asset:create": "Prześlij nowe zasoby platformy", + "platform:asset:read": "Pobierz zasoby platformy", + "platform:module:read": "Wyświetl szczegóły modułu", + "platform:module:access": "Wyświetl moduły w menu głównym", + "platform:module:manage": "Instaluj/odinstaluj moduły", + "platform:setting:read": "Odczytaj ustawienia platformy", + "platform:setting:access": "Wyświetl ustawienia w menu głównym", + "platform:setting:update": "Zmień ustawienia platformy", + "platform:dynamic_properties:read": "Wyświetl szczegóły właściwości dynamicznych", + "platform:dynamic_properties:create": "Utwórz nowe właściwości dynamiczne", + "platform:dynamic_properties:access": "Wyświetl właściwości dynamiczne w menu głównym", + "platform:dynamic_properties:update": "Zmień właściwości dynamiczne", + "platform:dynamic_properties:delete": "Usuń właściwości dynamiczne", + "platform:security:read": "Wyświetl szczegóły użytkowników i ról", + "platform:security:create": "Utwórz nowych użytkowników i role", + "platform:security:access": "Wyświetl bezpieczeństwo w menu głównym", + "platform:security:update": "Zmień użytkowników i role", + "platform:security:delete": "Usuń użytkowników i role", + "platform:security:verifyEmail": "Zmień stan weryfikacji i wyślij email weryfikacyjny", + "background_jobs:manage": "Dostęp do konsoli Hangfire", + "platform:exportImport:access": "Wyświetl Eksport/Import w menu głównym", + "platform:import": "Importuj dane platformy i modułów", + "platform:export": "Eksportuj dane platformy i modułów", + "platform:security:loginOnBehalf": "Zaloguj się w imieniu klienta" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Języki", + "description": "Lista dostępnych języków" + } + } + }, + "ModulesAutoInstalled": { + "description": "Flaga wskazuje, że moduły są automatycznie instalowane", + "title": "Moduły zainstalowane" + }, + "ModulesAutoInstallState": { + "title": "Stan automatycznej instalacji modułów", + "description": "Aktualny stan kreatora automatycznej instalacji modułów" + }, + "SetupStep": { + "title": "Aktualny krok konfiguracji", + "description": "Aktualny krok w kreatorze konfiguracji" + }, + "SampleDataState": { + "title": "Stan przykładowych danych", + "description": "Aktualny stan kreatora przykładowych danych" + }, + "SendDiagnosticData": { + "title": "Wysyłaj dane diagnostyczne", + "description": "Wysyłaj dane diagnostyczne platformy VC do VC. Można wyłączyć tylko po zakupie licencji" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Słownik możliwych typów kont", + "title": "Typy kont" + }, + "DefaultAccountType": { + "title": "Domyślny typ konta", + "description": "Domyślna wartość typu konta przy tworzeniu nowego konta" + }, + "DefaultAccountStatus": { + "title": "Domyślny status konta", + "description": "Domyślna wartość statusu konta przy tworzeniu nowego konta" + }, + "DefaultExternalAccountStatus": { + "title": "Domyślny status konta zewnętrznego", + "description": "Domyślna wartość statusu konta przy tworzeniu nowego konta podczas zewnętrznego logowania" + }, + "EnablePruneExpiredTokensJob": { + "description": "Włącza usuwanie wygasłych i nieprawidłowych tokenów/autoryzacji", + "title": "Usuwaj wygasłe tokeny" + }, + "CronPruneExpiredTokensJob": { + "description": "Wyrażenie cron dla zadania usuwania wygasłych i nieprawidłowych tokenów/autoryzacji", + "title": "Cron dla zadania usuwania tokenów" + }, + "FileExtensionsBlackList": { + "description": "Rozszerzenia plików zabronione do przesłania przez platformę (dodatkowo do 'FileExtensionsBlackList' w appsettings.json)", + "title": "Czarna lista" + }, + "FileExtensionsWhiteList": { + "description": "Rozszerzenia plików dozwolone do przesłania przez platformę (dodatkowo do 'FileExtensionsWhiteList' w appsettings.json)", + "title": "Biała lista" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Zapisany stan menu głównego", + "title": "Zapisany stan menu głównego" + } + }, + "Language": { + "description": "Domyślny język (dwuliterowy kod z ISO 639-1, niewrażliwy na wielkość liter). Przykład: pl, en", + "title": "Język" + }, + "RegionalFormat": { + "description": "Domyślny format regionalny (kod lokalizacji CLDR, z myślnikiem lub podkreśleniem jako separatorem, niewrażliwy na wielkość liter). Przykład: pl, pl_PL, sr_Cyrl, sr_Cyrl_RS", + "title": "Format regionalny" + }, + "TimeZone": { + "description": "Domyślna strefa czasowa (nazwa strefy czasowej IANA [baza danych tz], dokładnie jak w bazie danych, wrażliwa na wielkość liter). Przykłady: Europe/Warsaw, America/New_York", + "title": "Strefa czasowa" + }, + "UseTimeAgo": { + "description": "Gdy ustawione na true (domyślnie), system wyświetla datę w formacie 'kilka sekund temu', gdy to możliwe", + "title": "Używaj formatu czasu względnego, gdy to możliwe" + }, + "FullDateThreshold": { + "description": "Format względny czasu przełączy się na pełny format daty po określonej liczbie jednostek czasu", + "title": "Próg pełnej daty" + }, + "FullDateThresholdUnit": { + "description": "Jednostka progu pełnej daty", + "title": "Jednostka progu pełnej daty" + }, + "Customization": { + "description": "JSON zawierający ustawienia personalizacji interfejsu menedżera", + "title": "Dostosowanie interfejsu menedżera" + }, + "ShowMeridian": { + "description": "Pokaż wskaźnik południka czasu (AM lub PM)", + "title": "Pokaż południk czasu" + } + }, + "Cache": { + "Enabled": { + "description": "To ustawienie pozwala globalnie włączyć i wyłączyć buforowanie dla całej aplikacji platformy", + "title": "Włącz lub wyłącz buforowanie globalnie" + }, + "AbsoulteExpiration": { + "description": "Określa maksymalny czas przechowywania buforowanych danych w pamięci podręcznej. Format: [-][d.]hh:mm:ss[.fffffff]", + "title": "Globalny czas życia obiektów w pamięci podręcznej" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Statusy konta", + "description": "Zmień statusy konta" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Common.json new file mode 100644 index 00000000000..8e474c468e9 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "Adicionar", + "activate": "Ativar", + "assign": "Atribuir", + "cancel": "Cancelar", + "clear": "Limpar", + "clear-all": "Limpar tudo", + "clone": "Clonar", + "close": "Fechar", + "confirm": "Confirmar", + "copy-link": "Copiar link", + "copy": "Copiar", + "create": "Criar", + "cut": "Recortar", + "delete": "Excluir", + "add-all": "Adicionar tudo", + "remove-all": "Excluir tudo", + "download": "Baixar", + "edit": "Editar", + "export": "Exportar", + "generate": "Gerar", + "import": "Importar", + "import-sample-data": "Importar dados de exemplo", + "install": "Instalar", + "manage": "Gerenciar", + "more": "Mais", + "no": "Não", + "new-folder": "Nova pasta", + "new-license": "Renovar licença", + "ok": "OK", + "paste": "Colar", + "pick-selected": "Escolher selecionados", + "preview": "Visualizar", + "open-browser": "Abrir no navegador", + "redo": "Refazer", + "refresh": "Atualizar", + "remove": "Remover", + "reset": "Redefinir", + "restart": "Reiniciar", + "save": "Salvar", + "send": "Enviar", + "select-all": "Selecionar tudo", + "set-to-default": "Definir como padrão", + "start-export": "Iniciar exportação", + "settings": "Configurações", + "sign-out": "Sair", + "undo": "Desfazer", + "uninstall": "Desinstalar", + "unselect-all": "Desmarcar tudo", + "update": "Atualizar", + "upload": "Enviar", + "yes": "Sim", + "add-new-property": "Adicionar nova propriedade", + "manage-type-properties": "Tipos de propriedades", + "manage-profile": "Gerenciar perfil", + "minimize": "Minimizar", + "maximize": "Maximizar", + "stop-sending": "Parar envio", + "set-active": "Definir como ativo", + "reject-user": "Rejeitar usuário", + "change-password": "Alterar senha", + "unlock-account": "Desbloquear conta", + "lock-account": "Bloquear conta", + "today": "Hoje", + "time": "Hora", + "now": "Agora", + "date": "Data", + "see-details": "Ver detalhes", + "dismiss": "Dispensar", + "hide-empty-property-values": "Ocultar valores vazios", + "show-empty-property-values": "Mostrar valores vazios", + "titles": { + "refresh": "Atualizar", + "new-folder": "Nova pasta", + "upload": "Enviar" + } + }, + "list": { + "no-data": "Sem dados", + "count": "Contagem", + "loading": "Carregando...", + "item-not-found": "Erro: Não encontrado" + }, + "placeholders": { + "n-a": "N/D", + "no-file": "Escolher arquivo", + "search-keyword": "Pesquisar palavra-chave...", + "select-value": "Selecionar valor", + "select-values": "Selecionar valor" + }, + "dialogs": { + "delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir as entradas selecionadas?" + } + }, + "properties": { + "short-text": { + "title": "Texto curto", + "description": "Valores de texto com menos de 1024 caracteres" + }, + "long-text": { + "title": "Texto longo", + "description": "Texto ilimitado sem restrição de tamanho" + }, + "integer": { + "title": "Inteiro", + "description": "Número inteiro" + }, + "decimal": { + "title": "Número decimal", + "description": "Número decimal com precisão de 18 e escala de 4" + }, + "date-time": { + "title": "Data e hora", + "description": "Selecionar data" + }, + "boolean": { + "title": "Booleano", + "description": "Tipo interruptor" + }, + "html": { + "title": "HTML", + "description": "Marcação HTML" + }, + "undefined": { + "title": "Indefinido" + }, + "image": { + "title": "Imagem", + "description": "Tipo de imagem" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "Digite texto curto", + "secure-string": "Digite texto secreto", + "email": "Digite e-mail", + "url": "Digite URL", + "long-text": "Digite texto longo", + "integer": "Digite número inteiro", + "number": "Digite número decimal", + "date-time": "Escolha a data", + "short-text-multivalue": "Adicionar valor", + "integer-multivalue": "Adicionar inteiro", + "number-multivalue": "Adicionar decimal", + "short-text-dictionary": "Selecionar valor", + "short-text-dictionary-multivalue": "Selecionar valor", + "short-text-multilang": "Digite o valor", + "long-text-multilang": "Digite o valor", + "short-text-multivalue-multilang": "Adicionar valor", + "short-text-dictionary-multilang": "Selecionar valor", + "short-text-dictionary-multivalue-multilang": "Selecionar valor", + "long-text-dictionary-multivalue-multilang": "Selecionar valor" + } + }, + "short-text-input": { + "placeholder": "Digite o valor", + "required": "Este campo é obrigatório", + "maxLength": "Este campo não deve conter mais de {{number}} caracteres" + }, + "validators": { + "uriWithoutQuery": { + "error": "Formato de URI inválido. Certifique-se de que a URI não tenha parâmetros de consulta" + } + }, + "errors": { + "generic-error": "Erro", + "400": "Requisição inválida", + "401": "Não autorizado", + "403": "Proibido", + "404": "Não encontrado", + "405": "Método não permitido", + "406": "Não aceitável", + "407": "Autenticação de proxy necessária", + "408": "Tempo limite da requisição", + "409": "Conflito", + "429": "Muitas requisições", + "500": "Erro interno do servidor", + "501": "Não implementado", + "502": "Gateway inválido", + "503": "Serviço indisponível", + "504": "Tempo limite do gateway" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..596439255d6 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "Afeganistão", + "EGY": "Egito", + "ALA": "Åland", + "ALB": "Albânia", + "DZA": "Argélia", + "ASM": "Samoa Americana", + "VIR": "Ilhas Virgens Americanas", + "AND": "Andorra", + "AGO": "Angola", + "AIA": "Anguilla", + "ATA": "Antártida (status especial pelo Tratado da Antártida)", + "ATG": "Antígua e Barbuda", + "GNQ": "Guiné Equatorial", + "ARG": "Argentina", + "ARM": "Armênia", + "ABW": "Aruba", + "AZE": "Azerbaijão", + "ETH": "Etiópia", + "AUS": "Austrália", + "BHS": "Bahamas", + "BHR": "Bahrein", + "BGD": "Bangladesh", + "BRB": "Barbados", + "BLR": "Bielorrússia", + "BEL": "Bélgica", + "BLZ": "Belize", + "BEN": "Benin", + "BMU": "Bermudas", + "BTN": "Butão", + "BOL": "Bolívia", + "BES": "Bonaire, Santo Eustáquio e Saba", + "BIH": "Bósnia e Herzegovina", + "BWA": "Botsuana", + "BVT": "Ilha Bouvet", + "BRA": "Brasil", + "VGB": "Ilhas Virgens Britânicas", + "IOT": "Território Britânico do Oceano Índico", + "BRN": "Brunei", + "BGR": "Bulgária", + "BFA": "Burkina Faso", + "BDI": "Burundi", + "CHL": "Chile", + "CHN": "República Popular da China", + "COK": "Ilhas Cook", + "CRI": "Costa Rica", + "CUW": "Curaçao", + "DNK": "Dinamarca", + "DEU": "Alemanha", + "DMA": "Dominica", + "DOM": "República Dominicana", + "DJI": "Djibuti", + "ECU": "Equador", + "CIV": "Costa do Marfim", + "SLV": "El Salvador", + "ERI": "Eritreia", + "EST": "Estônia", + "SWZ": "Essuatíni", + "FLK": "Ilhas Malvinas", + "FRO": "Ilhas Faroé", + "FJI": "Fiji", + "FIN": "Finlândia", + "FRA": "França", + "GUF": "Guiana Francesa", + "PYF": "Polinésia Francesa", + "ATF": "Terras Austrais e Antárticas Francesas", + "GAB": "Gabão", + "GMB": "Gâmbia", + "GEO": "Geórgia", + "GHA": "Gana", + "GIB": "Gibraltar", + "GRD": "Granada", + "GRC": "Grécia", + "GRL": "Groenlândia", + "GLP": "Guadalupe", + "GUM": "Guam", + "GTM": "Guatemala", + "GGY": "Guernsey", + "GIN": "Guiné", + "GNB": "Guiné-Bissau", + "GUY": "Guiana", + "HTI": "Haiti", + "HMD": "Ilha Heard e Ilhas McDonald", + "HND": "Honduras", + "HKG": "Hong Kong", + "IND": "Índia", + "IDN": "Indonésia", + "IMN": "Ilha de Man", + "IRQ": "Iraque", + "IRN": "Irã", + "IRL": "Irlanda", + "ISL": "Islândia", + "ISR": "Israel", + "ITA": "Itália", + "JAM": "Jamaica", + "JPN": "Japão", + "YEM": "Iêmen", + "JEY": "Jersey", + "JOR": "Jordânia", + "CYM": "Ilhas Cayman", + "KHM": "Camboja", + "CMR": "Camarões", + "CAN": "Canadá", + "CPV": "Cabo Verde", + "KAZ": "Cazaquistão", + "QAT": "Catar", + "KEN": "Quênia", + "KGZ": "Quirguistão", + "KIR": "Kiribati", + "CCK": "Ilhas Cocos", + "COL": "Colômbia", + "COM": "Comores", + "COD": "República Democrática do Congo", + "COG": "República do Congo", + "PRK": "Coreia do Norte", + "KOR": "Coreia do Sul", + "HRV": "Croácia", + "CUB": "Cuba", + "KWT": "Kuwait", + "LAO": "Laos", + "LSO": "Lesoto", + "LVA": "Letônia", + "LBN": "Líbano", + "LBR": "Libéria", + "LBY": "Líbia", + "LIE": "Liechtenstein", + "LTU": "Lituânia", + "LUX": "Luxemburgo", + "MAC": "Macau", + "MDG": "Madagascar", + "MWI": "Malawi", + "MYS": "Malásia", + "MDV": "Maldivas", + "MLI": "Mali", + "MLT": "Malta", + "MAR": "Marrocos", + "MHL": "Ilhas Marshall", + "MTQ": "Martinica", + "MRT": "Mauritânia", + "MUS": "Maurício", + "MYT": "Mayotte", + "MEX": "México", + "FSM": "Micronésia", + "MDA": "Moldávia", + "MCO": "Mônaco", + "MNG": "Mongólia", + "MNE": "Montenegro", + "MSR": "Montserrat", + "MOZ": "Moçambique", + "MMR": "Myanmar", + "NAM": "Namíbia", + "NRU": "Nauru", + "NPL": "Nepal", + "NCL": "Nova Caledônia", + "NZL": "Nova Zelândia", + "NIC": "Nicarágua", + "NLD": "Países Baixos", + "NER": "Níger", + "NGA": "Nigéria", + "NIU": "Niue", + "MNP": "Ilhas Marianas do Norte", + "MKD": "Macedônia do Norte", + "NFK": "Ilha Norfolk", + "NOR": "Noruega", + "OMN": "Omã", + "AUT": "Áustria", + "TLS": "Timor-Leste", + "PAK": "Paquistão", + "PSE": "Palestina", + "PLW": "Palau", + "PAN": "Panamá", + "PNG": "Papua-Nova Guiné", + "PRY": "Paraguai", + "PER": "Peru", + "PHL": "Filipinas", + "PCN": "Ilhas Pitcairn", + "POL": "Polônia", + "PRT": "Portugal", + "PRI": "Porto Rico", + "REU": "Reunião", + "RWA": "Ruanda", + "ROU": "Romênia", + "RUS": "Rússia", + "SLB": "Ilhas Salomão", + "BLM": "São Bartolomeu", + "MAF": "São Martinho (parte francesa)", + "ZMB": "Zâmbia", + "WSM": "Samoa", + "SMR": "San Marino", + "STP": "São Tomé e Príncipe", + "SAU": "Arábia Saudita", + "SWE": "Suécia", + "CHE": "Suíça", + "SEN": "Senegal", + "SRB": "Sérvia", + "SYC": "Seychelles", + "SLE": "Serra Leoa", + "ZWE": "Zimbábue", + "SGP": "Singapura", + "SXM": "São Martinho (parte holandesa)", + "SVK": "Eslováquia", + "SVN": "Eslovênia", + "SOM": "Somália", + "ESP": "Espanha", + "LKA": "Sri Lanka", + "SHN": "Santa Helena, Ascensão e Tristão da Cunha", + "KNA": "São Cristóvão e Nevis", + "LCA": "Santa Lúcia", + "SPM": "São Pedro e Miquelão", + "VCT": "São Vicente e Granadinas", + "ZAF": "África do Sul", + "SDN": "Sudão", + "SGS": "Ilhas Geórgia do Sul e Sandwich do Sul", + "SSD": "Sudão do Sul", + "SUR": "Suriname", + "SJM": "Svalbard e Jan Mayen", + "SYR": "Síria", + "TJK": "Tajiquistão", + "TWN": "Taiwan", + "TZA": "Tanzânia", + "THA": "Tailândia", + "TGO": "Togo", + "TKL": "Tokelau", + "TON": "Tonga", + "TTO": "Trinidad e Tobago", + "TCD": "Chade", + "CZE": "República Tcheca", + "TUN": "Tunísia", + "TUR": "Turquia", + "TKM": "Turcomenistão", + "TCA": "Ilhas Turcas e Caicos", + "TUV": "Tuvalu", + "UGA": "Uganda", + "UKR": "Ucrânia", + "HUN": "Hungria", + "UMI": "Ilhas Menores Distantes dos Estados Unidos", + "URY": "Uruguai", + "UZB": "Uzbequistão", + "VUT": "Vanuatu", + "VAT": "Cidade do Vaticano", + "VEN": "Venezuela", + "ARE": "Emirados Árabes Unidos", + "USA": "Estados Unidos", + "GBR": "Reino Unido", + "VNM": "Vietnã", + "WLF": "Wallis e Futuna", + "CXR": "Ilha Christmas", + "ESH": "Saara Ocidental", + "CAF": "República Centro-Africana", + "CYP": "Chipre" + }, + "CAN": { + "AB": "Alberta", + "BC": "Colúmbia Britânica", + "MB": "Manitoba", + "NB": "Nova Brunswick", + "NL": "Terra Nova e Labrador", + "NT": "Territórios do Noroeste", + "NS": "Nova Escócia", + "NU": "Nunavut", + "ON": "Ontário", + "PE": "Ilha do Príncipe Eduardo", + "QC": "Quebec", + "SK": "Saskatchewan", + "YT": "Yukon" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..9789a4e954d --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/pt.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "Início", + "browse": "Navegar", + "configuration": "Configuração", + "notifications": "Notificações", + "more": "Mais", + "settings": "Configurações", + "dynamic-properties": "Propriedades dinâmicas", + "security": "Segurança", + "modules": "Módulos", + "export-import": "Exportar e Importar", + "user-profile": "Perfil do usuário", + "assets": "Recursos", + "toggle-favorites": "Shift + Espaço para alternar favoritos", + "help": "Ajuda" + }, + "navigation": { + "back": "Voltar" + }, + "blades": { + "system-info": { + "title": "Informações da plataforma", + "labels": { + "clr-version": "Versão CLR", + "environment-name": "Modo de ambiente", + "is-64-bit-os": "Sistema operacional de 64 bits", + "is-64-bit-process": "Processo de 64 bits", + "database-provider": "Provedor de banco de dados" + } + }, + "asset-list": { + "title": "Gerenciamento de recursos", + "bread-crumb-top": "Todos os recursos", + "labels": { + "picture": "Imagem", + "name": "Nome", + "size": "Tamanho", + "modified": "Modificado", + "actions": "Ações", + "group": "Grupo", + "language": "Idioma" + } + }, + "asset-upload": { + "title": "Upload de recurso", + "labels": { + "select-files": "Selecionar arquivos", + "drag-note": "Arraste e solte arquivos aqui", + "progress": "Progresso", + "asset-uploaded": "Recurso(s) carregado(s)" + }, + "placeholders": { + "image-url": "Cole a URL do arquivo aqui" + } + }, + "operation-list": { + "labels": { + "login": "Login", + "details": "Detalhes", + "time": "Hora" + } + }, + "dynamicObject-list": { + "title": "Tipos de objetos dinâmicos", + "subtitle": "Escolha o tipo de objeto para gerenciar propriedades dinâmicas", + "labels": { + "no-objects": "Nenhum objeto suporta propriedades dinâmicas ainda" + } + }, + "dynamicProperty-detail": { + "title": "Gerenciar propriedade", + "subtitle": "Gerenciar propriedade", + "subtitle-new": "Nova propriedade", + "labels": { + "property-name": "Nome da propriedade", + "required": "Obrigatório", + "multivalue": "Multivalor", + "multilingual": "Multilíngue", + "dictionary": "Dicionário", + "description": "Descrição", + "display-order": "Ordem de exibição", + "display-name": "Nome de exibição", + "value-type": "Tipo de valor", + "dictionary-values": "Valores do dicionário", + "manage-dictionary": "Gerenciar dicionário" + }, + "placeholders": { + "description": "Digite a descrição da propriedade", + "display-name": "Digite o nome de exibição...", + "display-order": "Ordem de exibição" + }, + "validations": { + "multivalue": "Propriedade multivalor só pode ter tipo de valor Texto Curto, Inteiro ou Decimal", + "multilingual": "Apenas texto ou valor HTML pode ser multilíngue", + "dictionary": "Apenas dicionários do tipo de valor Texto Curto são suportados" + } + }, + "dynamicProperty-list": { + "subtitle": "Gerenciar propriedades dinâmicas", + "labels": { + "no-properties": "Ainda não há propriedades dinâmicas" + } + }, + "notifications-menu": { + "subtitle": "Trabalhando com o sistema de notificações" + }, + "property-dictionary": { + "title": "Valores do dicionário", + "subtitle": "Gerenciar valores do dicionário", + "labels": { + "edit-value": "Editar valor", + "new-value": "Novo valor", + "dictionary-name": "Nome da entrada do dicionário", + "localized-values": "Valores localizados", + "current-values": "Valores atuais", + "name": "Nome", + "values": "Valores" + }, + "validations": { + "dictionary-name-required": "Obrigatório", + "dictionary-name": "Nome duplicado encontrado", + "localized-values-required": "Obrigatório", + "localized-values": "Nome duplicado encontrado", + "dictionary": "Apenas dicionários do tipo de valor Texto Curto são suportados" + }, + "placeholders": { + "dictionary-name": "Digite o nome", + "localized-values": "Digite o valor" + } + }, + "propertyValue-list": { + "title": "Propriedades dinâmicas", + "subtitle": "", + "labels": { + "header": "Valores das propriedades", + "no-properties": "Esta entidade ainda não tem propriedades dinâmicas. Clique em 'Tipos de propriedades' e crie algumas propriedades. Feche e reabra a visualização da entidade atual para carregar as propriedades dinâmicas" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Obrigatório" + }, + "labels": { + "new-value": "Novo valor", + "current-values": "Valores atuais", + "values": "Valores" + }, + "placeholders": { + "value": "Digite o valor" + } + }, + "export-main": { + "title": "Exportação de dados", + "labels": { + "platform-entries": "Entradas da plataforma", + "choose-modules": "Escolha os módulos para exportar", + "download-url": "URL de download", + "errors": "Erros", + "start": "Início", + "end": "Fim" + }, + "menu": { + "security": { + "title": "Segurança", + "description": "Contas e funções" + }, + "binary": { + "title": "Binário", + "description": "Dados binários" + }, + "settings": { + "title": "Configurações", + "description": "Configurações da plataforma" + }, + "dynamic-props": { + "title": "Propriedades dinâmicas", + "description": "Propriedades dinâmicas da plataforma" + } + } + }, + "import-main": { + "title": "Importação de dados", + "labels": { + "start-import": "Iniciar importação", + "select-file": "Selecione o arquivo .zip para importar. O arquivo deve ser produzido pela exportação de dados do Commerce Manager", + "drag-note": "Arraste e solte o arquivo .zip para importar. O arquivo deve ser produzido pela exportação de dados do Commerce Manager", + "upload-failed": "Falha no upload", + "upload-progress": "Progresso do upload", + "import-progress": "Progresso da importação", + "import-finished": "Importação concluída", + "import-data-information": "Informações dos dados importados", + "author": "Autor", + "data-file-created": "Arquivo de dados criado", + "created-platform-version": "Criado na versão da Plataforma", + "platform-entries": "Entradas da plataforma", + "choose-modules": "Escolha os módulos para importar", + "no-data": "Sem dados", + "errors": "Erros", + "start": "Início", + "end": "Fim" + }, + "menu": { + "security": { + "title": "Segurança", + "description": "Contas e funções" + }, + "binary": { + "title": "Binário", + "description": "Dados binários" + }, + "settings": { + "title": "Configurações", + "description": "Configurações da plataforma" + }, + "dynamic-props": { + "title": "Propriedades dinâmicas", + "description": "Propriedades dinâmicas da plataforma" + } + } + }, + "exportImport-main": { + "title": "Exportação e importação de dados", + "menu": { + "export": { + "title": "Exportar", + "description": "Os dados serão salvos em um arquivo para que possam ser importados posteriormente" + }, + "import": { + "title": "Importar", + "description": "Importar dados de um arquivo exportado" + } + } + }, + "resolve-result": { + "title": "Visualizar resultado", + "labels": { + "subject": "Assunto", + "body": "Corpo" + } + }, + "module-settings-detail": { + "title": "Configurações do módulo" + }, + "module-wizard-progress-step": { + "title-install": "Instalação do módulo", + "title-update": "Atualização do módulo", + "title-uninstall": "Desinstalação do módulo", + "labels": { + "start": "Início", + "end": "Fim", + "progress-messages": "Mensagens de progresso", + "process-completed": "Processo de instalação do módulo concluído", + "restart-application": "Reiniciar a aplicação agora ou mais tarde" + } + }, + "module-detail": { + "title": "Informações do módulo", + "labels": { + "i-accept-the": "Eu aceito a", + "license-link": "licença", + "license": "Licença", + "agreement": "acordo", + "install-from-file": "Instalar / atualizar módulo a partir de arquivo", + "select-module-file": "Faça upload de um arquivo de módulo (.zip) de uma fonte externa fora do repositório central de módulos", + "upload-progress": "Progresso do upload", + "module-info": "Informações do módulo", + "title": "Título", + "official": "Módulo oficial por {{$owner}}", + "owners": "Desenvolvido por {{$owner}}", + "author": "Autor", + "authors": "Autores", + "id": "ID", + "version": "Versão", + "project-information": "Informações do projeto", + "description": "Descrição", + "platform-version": "Versão da plataforma", + "dependencies": "Dependências", + "optional-dependencies": "Dependências opcionais", + "tags": "Tags", + "install-version": "Instalar versão", + "errors": "Erros" + } + }, + "modules-main": { + "title": "Módulos", + "labels": { + "updates": "Atualizações", + "available": "Disponíveis", + "installed": "Instalados", + "withErrors": "Erros", + "advanced": "Avançado" + } + }, + "modules-list": { + "subtitle": "Gerenciamento de módulos", + "labels": { + "grouping": "Mostrar pacotes de módulos", + "ungrouped": "Outros", + "no-updates": "Nenhuma atualização encontrada", + "no-modules-part1": "Nenhum novo módulo para instalar", + "no-installed-modules": "Nenhum módulo instalado encontrado", + "icon": "Ícone", + "up-to-date": "Módulo está atualizado", + "update-available": "Atualização disponível para este módulo", + "module": "Módulo", + "version": "Versão", + "author": "Autor", + "installed": "Módulos instalados", + "manual-install-warning": "Aviso! Módulos instalados manualmente não iniciarão porque RefreshProbingFolderOnStart está definido como falso" + } + }, + "history": { + "title": "Eventos do sistema", + "subtitle": "Histórico de eventos", + "labels": { + "type": "Tipo", + "title": "Título", + "created": "Criado", + "description": "Descrição" + } + }, + "historyDetailDefault": { + "title": "Detalhe do evento", + "subtitle": "Detalhe do evento", + "labels": { + "start": "Início", + "end": "Fim", + "elapsed": "Decorrido", + "errors": "Erros", + "stats": "Processados {{ processedCount }} de {{ totalCount }} registros" + } + }, + "menuHeader": { + "labels": { + "history": "Histórico", + "clear-recent": "Limpar todos os recentes" + } + }, + "account-changePassword": { + "labels": { + "title": "Por favor, insira uma nova senha", + "login": "Login", + "force-change-info": "Sua senha expirou. Você deve alterar a senha para continuar usando o gerenciador", + "current-password": "Senha atual", + "new-password": "Nova senha", + "repeat-password": "Repita a nova senha", + "cancel": "Cancelar", + "save": "Alterar", + "fail": "Desculpe, não foi possível redefinir a senha para este usuário" + }, + "validations": { + "current-password": "Obrigatório", + "new-password": "As senhas antiga e nova são iguais!", + "repeat-password": "As novas senhas não coincidem!" + }, + "placeholders": { + "current-password": "Digite a senha atual", + "new-password": "Digite a nova senha", + "repeat-password": "Repita a nova senha" + } + }, + "account-resetPassword": { + "subtitle": "Alterar senha do usuário", + "labels": { + "new-password": "Nova senha", + "repeat-password": "Repita a senha", + "force-password-change": "Fazer este usuário alterar sua senha na próxima vez que ele entrar" + }, + "validations": { + "repeat-password": "As novas senhas não coincidem!", + "invalid-token": "O token de redefinição de senha é inválido ou expirou", + "password-too-weak": "A nova senha não está em conformidade com uma ou mais políticas de segurança de senha:", + "passwordTooShort": "As senhas devem ter {{parameter}} ou mais caracteres", + "passwordRequiresUniqueChars": "As senhas devem usar pelo menos {{parameter}} caracteres diferentes", + "passwordRequiresLower": "As senhas devem ter pelo menos uma letra minúscula ('a'-'z')", + "passwordRequiresUpper": "As senhas devem ter pelo menos uma letra maiúscula ('A'-'Z')", + "passwordRequiresDigit": "As senhas devem ter pelo menos um dígito ('0'-'9')", + "passwordRequiresNonAlphanumeric": "As senhas devem ter pelo menos um caractere não alfanumérico", + "recentPasswordUsed": "Você usou esta senha no passado. Escolha outra" + }, + "placeholders": { + "new-password": "Digite a nova senha", + "repeat-password": "Repita a nova senha" + } + }, + "account-detail": { + "title-new": "Nova conta", + "labels": { + "user-information": "Informações do usuário", + "is-administrator": "É administrador", + "account-type": "Tipo de conta", + "login": "Login", + "account-state": "Estado da conta", + "account-email": "E-mail", + "locked-state": "Estado de bloqueio", + "status": "Status", + "verified": "Verificado", + "resend-link": "Reenviar link", + "link-sent": "O link foi enviado", + "last-login-date": "Data do último login" + }, + "placeholders": { + "account-type": "Selecione ...", + "email": "Digite o e-mail", + "user-name": "Digite o nome de usuário", + "status": "Selecione ..." + } + }, + "account-list": { + "title": "Usuários", + "subtitle": "Serviço de segurança", + "labels": { + "name": "Nome", + "account-type": "Tipo de conta", + "login": "Login", + "state": "Estado", + "status": "Status" + } + }, + "account-api": { + "labels": { + "api-key": "Chave API", + "is-active": "está ativa" + }, + "placeholders": { + "api-key": "Digite a chave API" + } + }, + "role-detail": { + "subtitle": "Detalhes da função", + "labels": { + "summary": "Resumo", + "name": "Nome", + "description": "Descrição", + "assigned-permissions": "Permissões atribuídas", + "permission-name": "Nome", + "assigned-scopes": "Escopos atribuídos", + "no-permissions-assigned": "Nenhuma permissão atribuída" + }, + "placeholders": { + "name": "Digite o nome", + "description": "Digite a descrição" + } + }, + "account-roles": { + "subtitle": "Atribuir funções", + "labels": { + "select-roles": "Selecione funções para atribuir", + "no-roles": "Nenhuma função para atribuir" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "Funções atribuídas", + "no-assigned": "Nenhuma função atribuída" + } + }, + "permission-scopes": { + "subtitle": "Configurar escopos de permissão", + "labels": { + "select-bounded-scopes": "Selecione escopos limitados", + "selected": "Selecionado", + "scope-name": "Nome e parâmetros do escopo", + "no-scopes": "Nenhum escopo" + } + }, + "role-permissions": { + "subtitle": "Atribuir permissões", + "labels": { + "select-permissions": "Selecione permissões para atribuir" + } + }, + "new-role-wizard": { + "title": "Nova função", + "labels": { + "summary": "Resumo", + "name": "Nome", + "description": "Descrição", + "assign-permissions": "Atribuir permissões" + }, + "placeholders": { + "name": "Digite o nome", + "description": "Digite a descrição" + } + }, + "role-list": { + "title": "Funções", + "subtitle": "Serviço de segurança", + "labels": { + "name": "Nome" + } + }, + "oauthapps": { + "labels": { + "clientId": "ID do cliente", + "displayName": "Nome de exibição", + "type": "Tipo", + "clientSecret": "Segredo do cliente", + "assigned-permissions": "Permissões atribuídas", + "redirectUris": "URIs de redirecionamento", + "postLogoutRedirectUris": "URIs de redirecionamento pós-logout" + }, + "placeholders": { + "clientId": "Digite o ID do cliente", + "displayName": "Digite o nome de exibição", + "type": "Digite o tipo", + "clientSecret": "Digite o segredo do cliente" + } + }, + "oauthapps-list": { + "title": "Aplicativos OAuth", + "subtitle": "Serviço de segurança" + }, + "oauthapps-detail": { + "title": "Editar aplicativo OAuth", + "title-new": "Criar aplicativo OAuth", + "subtitle": "Serviço de segurança", + "labels": { + "clientSecret-warning": "Aviso! Você deve copiar o segredo agora. Ele será ocultado após fechar a lâmina", + "urls": "URLs" + }, + "blades": { + "edit-redirectUris": { + "title": "URIs de redirecionamento", + "subtitle": "Gerenciar URIs de redirecionamento" + }, + "edit-postLogoutRedirectUris": { + "title": "URIs de redirecionamento pós-logout", + "subtitle": "Gerenciar URIs de redirecionamento pós-logout" + } + } + }, + "login": { + "labels": { + "sign-in": "Entrar no Gerenciador {{title}}", + "login": "Login", + "password": "Senha", + "remember-me": "Lembrar-me", + "external-sign-in": "Entrar com {{displayName}}", + "forgot-password": "Esqueceu sua senha?", + "log-in": "Entrar", + "log-in-placeholder": "Digite seu e-mail ou nome de usuário", + "password-placeholder": "Digite sua senha", + "azure-log-in-label": "Entrar no site de administração através do Azure", + "password-log-in-type": "Usuário do sistema", + "or": "ou", + "signing-in": "Entrando..." + } + }, + "forgotpassword": { + "title": "Esqueceu sua senha?", + "labels": { + "login": "Login ou e-mail", + "description": "Enviaremos um e-mail com instruções sobre como redefinir sua senha", + "success": "Um e-mail com instruções foi enviado para você", + "fail": "Desculpe, não foi possível redefinir a senha para este usuário", + "back": "Voltar", + "submit": "Enviar", + "time-limit": "Você pode tentar novamente em {{countdown}}", + "time-limit-end": "Você pode tentar novamente agora" + }, + "placeholders": { + "login-or-email": "Digite o login ou e-mail" + } + }, + "access-denied": { + "title": "Acesso negado", + "labels": { + "message": "Você não tem acesso a este recurso. Por favor, entre em contato com o administrador", + "button": "Entrar com outras credenciais" + } + }, + "resetpassword": { + "title": "Redefinição de senha", + "labels": { + "success": "Sua senha foi redefinida", + "fail": "Desculpe, não foi possível redefinir a senha para este usuário", + "submit": "Redefinir", + "log-in": "Entrar" + } + }, + "license": { + "title": "Licença atual", + "title-new": "Ativação de nova licença", + "license-info": "Informações da licença", + "license-activation": "Ativação da licença", + "labels": { + "info-running-no-license": "Esta instância do Virto Commerce está executando com", + "info-open-source-license": "licença Comunitária de Código Aberto", + "info0": "Adquirindo ou renovando a licença:", + "info1": "Envie o ", + "info2": "Processaremos sua solicitação e entraremos em contato em breve", + "info3": "Assim que receber o \"Código de Ativação\" e/ou o arquivo de Licença, preencha um dos campos de ativação abaixo", + "info4": "O sistema exibirá as novas informações da licença. Revise-as e clique em \"Ativar\" para confirmar", + "customer": "Licença emitida para", + "type": "Tipo", + "expiration": "Expiração", + "email": "E-mail do cliente", + "request-license": "formulário de solicitação de licença", + "code-descr": "Digite o \"Código de Ativação\" da licença recebida e pressione [Enter]. Este é o método de ativação de licença mais rápido. (Requer conexão com a internet)", + "file-descr": "Opcionalmente, forneça o arquivo de Licença recebido. (Ativação offline)", + "upload-progress": "Progresso do upload", + "errors": "Erro de ativação" + }, + "placeholders": { + "code": "Digite o código de ativação" + } + }, + "new-account-wizard": { + "labels": { + "login": "Login", + "email": "E-mail", + "password": "Senha", + "repeat-password": "Repita a senha", + "assign-roles": "Atribuir funções" + }, + "placeholders": { + "email": "Digite o e-mail", + "login": "Digite o login", + "password": "Digite a nova senha", + "repeat-password": "Repita a nova senha" + }, + "validations": { + "repeat-password": "As senhas digitadas não coincidem!", + "password-too-weak": "A senha digitada não está em conformidade com uma ou mais políticas de segurança de senha:" + } + }, + "security-main": { + "title": "Segurança", + "subtitle": "Gerenciamento de usuários" + }, + "entitySetting-list": { + "title": "Configurações" + }, + "setting-dictionary": { + "subtitle": "Gerenciar valores do dicionário", + "labels": { + "new-value": "Por favor, digite o valor", + "current-values": "Valores atuais", + "value": "Valor" + }, + "validations": { + "new-value-required": "Obrigatório", + "new-value": "Valor duplicado encontrado" + }, + "placeholders": { + "new-value": "Por favor, digite o valor" + } + }, + "settings-detail": { + "title": "Valores de configuração", + "hide-description": "Ocultar" + }, + "settingGroup-list": { + "title": "Configurações", + "bread-crumb-top": "Todas as configurações" + }, + "settings-uploader": { + "drag-drop-comment": "Arraste e solte o arquivo aqui", + "or": "ou", + "browse-your-files": "navegue pelos seus arquivos" + }, + "localizable-setting-value-list": { + "subtitle": "Gerenciar valores do dicionário" + }, + "localizable-setting-value-details": { + "title": "Editar valor do dicionário", + "alias": "Valor do sistema" + }, + "user-profile": { + "title": "Perfil do usuário", + "labels": { + "language": "Idioma", + "language-description": "Idioma de exibição. Limpe para usar o idioma do navegador ou o idioma padrão", + "regional-format": "Formato regional", + "regional-format-description": "Formato regional de números, moeda, data e hora. Limpe para usar o formato regional do navegador ou o formato regional padrão", + "time-zone": "Fuso horário", + "time-zone-description": "Fuso horário atual do usuário no formato IANA (banco de dados tz). Selecione a cidade mais próxima em seu fuso horário. Limpe para usar o fuso horário do navegador ou o fuso horário padrão", + "use-time-ago": "Usar formato de tempo relativo quando possível", + "full-date-threshold-group": "Usar formato de data completa para datas anteriores a...", + "full-date-threshold-description": "Valor numérico das unidades de tempo", + "full-date-threshold-unit-description": "Unidade de tempo (por exemplo, horas ou anos)" + }, + "placeholders": { + "full-date-threshold": "Digite o valor limite", + "full-date-threshold-unit": "Selecione a unidade limite" + }, + "full-date-threshold-units": { + "Never": "Nunca", + "Seconds": "Segundos", + "Minutes": "Minutos", + "Hours": "Horas", + "Days": "Dias", + "Weeks": "Semanas", + "Months": "Meses", + "Quarters": "Trimestres", + "Years": "Anos" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "Escolha o tipo de dados de exemplo", + "size": "tamanho", + "version": "versão" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "Inicialização de dados de exemplo", + "starting-initialization": "Iniciando a inicialização de dados de exemplo...", + "errors": "Erros", + "start": "Início", + "end": "Fim" + } + }, + "licensing": { + "license-absent": "Licença comunitária", + "license-present": "Licença {{type}}, expira em {{expirationDate | amParse | date}}", + "community": "Executando a edição comunitária, clique para solicitar uma licença comercial", + "expired": "Sua licença expirou em {{expirationDate | amParse | date}}, por favor renove", + "purchase": "Comprar", + "renew": "Renovar", + "expiration-date": "Data de Expiração" + }, + "password-expiry": { + "expire-days": "Para proteger sua conta, você precisará alterar sua senha em {{count}} dias. ", + "expire-today": "Para proteger sua conta, você precisará alterar sua senha hoje. ", + "change-link": "Alterar agora" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "Instalação automática de módulos", + "loading": "Recuperando informações dos módulos...", + "finished": "Instalação concluída. Clique em Reiniciar para continuar", + "start": "Início", + "end": "Fim" + } + } + }, + "widgets": { + "operations": { + "title": "Alterações", + "blade-subtitle": "Histórico de alterações" + }, + "dynamicProperty": { + "title": "Propriedades dinâmicas" + }, + "entitySettings": { + "title": "Configurações" + }, + "accountApi": { + "title": "Chave API", + "blade-subtitle": "Chave API" + }, + "accountRoles": { + "title": "Funções", + "blade-subtitle": "Gerenciar funções" + } + }, + "dialogs": { + "folders-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir as pastas ou arquivos selecionados?" + }, + "properties-save": { + "title": "Salvar alterações", + "message": "As propriedades foram modificadas. Deseja salvar as alterações?" + }, + "notification-template-save": { + "title": "Salvar alterações", + "message": "O modelo de notificação foi modificado. Deseja salvar as alterações?" + }, + "role-save": { + "title": "Salvar alterações", + "message": "A função foi modificada. Deseja salvar as alterações?" + }, + "roles-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir as funções selecionadas?" + }, + "account-save": { + "title": "Salvar alterações", + "message": "A conta foi modificada. Deseja salvar as alterações?" + }, + "account-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir as contas selecionadas?" + }, + "oauthapps-save": { + "title": "Salvar alterações", + "message": "O aplicativo OAuth foi modificado. Deseja salvar as alterações?" + }, + "oauthapps-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir o aplicativo OAuth selecionado?" + }, + "dynamic-property-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir esta Propriedade dinâmica?" + }, + "settings-value-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir os valores selecionados?" + }, + "settings-save": { + "title": "Salvar alterações", + "message": "As configurações foram modificadas. Deseja salvar as alterações?" + }, + "settings-delete": { + "title": "Confirmação de exclusão", + "message": "As configurações foram modificadas. Deseja salvar as alterações?" + }, + "localizable-setting-value-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir os valores de dicionário selecionados?" + }, + "localizable-setting-value-save": { + "title": "Salvar alterações", + "message": "Este valor de dicionário foi modificado. Deseja salvar as alterações?" + }, + "email-sending-success": { + "title": "Envio bem-sucedido", + "message": "O e-mail foi enviado com sucesso!" + }, + "email-send-error": { + "title": "Erro no envio", + "message": "O e-mail não foi enviado! Erro: {{error}}" + }, + "dictionary-items-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir {{quantity}} item(ns) de dicionário selecionado(s)?" + }, + "module-action": { + "title-install": "Confirmação de instalação", + "title-update": "Confirmação de atualização", + "title-delete": "Confirmação de desinstalação", + "message0-install": "Você está prestes a instalar:", + "message0-update": "Você está prestes a atualizar:", + "message0-delete": "Você está prestes a desinstalar:", + "message1-install": "As seguintes dependências também serão instaladas:", + "message1-delete": "Os seguintes módulos dependentes também serão desinstalados:", + "message2-install": "Instalar seleção e dependências?", + "message2-update": "Atualizar seleção e dependências?", + "message2-delete": "Desinstalar este e TODOS os módulos dependentes?" + }, + "module-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja desinstalar este módulo?" + }, + "api-key-delete": { + "title": "Confirmação de exclusão", + "message": "Tem certeza de que deseja excluir esta chave de API?" + }, + "app-restart": { + "title": "Encerramento da aplicação", + "message": "Reinicie a aplicação para aplicar as alterações. Dependendo do seu serviço de hospedagem, a aplicação pode reiniciar automaticamente ou você pode precisar fazê-lo manualmente. Tem certeza de que deseja fechar a aplicação agora?" + }, + "error-details": { + "title": "Detalhes do erro" + }, + "impersonate-no-url": { + "title": "Login em nome de", + "message": "A URL da loja não foi adicionada às configurações da loja. Por favor, entre em contato com o administrador" + }, + "asset-upload-error": { + "title": "Erro de upload", + "message": "Escolha uma pasta! Não é possível fazer upload de um arquivo para a raiz!" + }, + "run-import": { + "title": "Confirmação de importação", + "message": "Tem certeza de que deseja importar dados de exemplo?" + }, + "create-folder": { + "title": "O nome da pasta deve estar em conformidade com as seguintes regras de nomenclatura:\n O nome da pasta deve ter entre 3 e 63 caracteres.\n O nome da pasta deve começar com uma letra ou número e pode conter apenas letras, números e hífen (-).\n Cada hífen (-) deve ser imediatamente precedido e seguido por uma letra ou número; hífens consecutivos não são permitidos.\n Todas as letras no nome da pasta devem ser minúsculas" + }, + "storefront-cache-reset-successfully": { + "title": "Cache redefinido", + "message": "O cache da aplicação frontend foi redefinido com sucesso" + } + }, + "commands": { + "login-on-behalf": "Login em nome de", + "reset-storefront-cache": "Redefinir cache" + } + }, + "permissions": { + "platform:asset:access": "Visualizar recursos no menu principal", + "platform:asset:delete": "Excluir recursos da Plataforma", + "platform:asset:update": "Alterar recursos da Plataforma", + "platform:asset:create": "Fazer upload de novos recursos da Plataforma", + "platform:asset:read": "Baixar recursos da Plataforma", + "platform:module:read": "Visualizar detalhes do módulo", + "platform:module:access": "Visualizar módulos no menu principal", + "platform:module:manage": "Instalar/desinstalar módulos", + "platform:setting:read": "Ler configurações da Plataforma", + "platform:setting:access": "Visualizar configurações no menu principal", + "platform:setting:update": "Alterar configurações da Plataforma", + "platform:dynamic_properties:read": "Visualizar detalhes de propriedades dinâmicas", + "platform:dynamic_properties:create": "Criar novas propriedades dinâmicas", + "platform:dynamic_properties:access": "Visualizar propriedades dinâmicas no menu principal", + "platform:dynamic_properties:update": "Alterar propriedades dinâmicas", + "platform:dynamic_properties:delete": "Excluir propriedades dinâmicas", + "platform:security:read": "Visualizar detalhes de usuários e funções", + "platform:security:create": "Criar novos usuários e funções", + "platform:security:access": "Visualizar segurança no menu principal", + "platform:security:update": "Alterar usuários e funções", + "platform:security:delete": "Excluir usuários e funções", + "platform:security:verifyEmail": "Alterar estado verificado e enviar e-mail de verificação", + "background_jobs:manage": "Acesso ao console Hangfire", + "platform:exportImport:access": "Visualizar Exportação/Importação no menu principal", + "platform:import": "Importar dados da Plataforma e módulos", + "platform:export": "Exportar dados da Plataforma e módulos", + "platform:security:loginOnBehalf": "Login em nome de um cliente" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "Idiomas", + "description": "Lista de idiomas disponíveis" + } + } + }, + "ModulesAutoInstalled": { + "description": "A flag indica que os módulos são instalados automaticamente", + "title": "Módulos instalados" + }, + "ModulesAutoInstallState": { + "title": "Estado de autoinstalação dos módulos", + "description": "Estado atual do assistente de autoinstalação de módulos" + }, + "SetupStep": { + "title": "Etapa de configuração atual", + "description": "Etapa atual no assistente de configuração" + }, + "SampleDataState": { + "title": "Estado dos dados de exemplo", + "description": "Estado atual do assistente de dados de exemplo" + }, + "SendDiagnosticData": { + "title": "Enviar dados de diagnóstico", + "description": "Enviar dados de diagnóstico da Plataforma VC para a VC. Só pode ser desativado com a compra de uma licença" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Dicionário para possíveis tipos de conta", + "title": "Tipos de conta" + }, + "DefaultAccountType": { + "title": "Tipo de conta padrão", + "description": "Valor padrão para o tipo de conta ao criar uma nova conta" + }, + "DefaultAccountStatus": { + "title": "Status de conta padrão", + "description": "Valor padrão para o status da conta ao criar uma nova conta" + }, + "DefaultExternalAccountStatus": { + "title": "Status de conta externa padrão", + "description": "Valor padrão para o status da conta ao criar uma nova conta durante o login externo" + }, + "EnablePruneExpiredTokensJob": { + "description": "Ativa a remoção de tokens/autorizações expirados e inválidos", + "title": "Remover tokens expirados" + }, + "CronPruneExpiredTokensJob": { + "description": "Expressão cron para o trabalho de remoção de tokens/autorizações expirados e inválidos", + "title": "Cron para o trabalho de remoção de tokens" + }, + "FileExtensionsBlackList": { + "description": "Extensões de arquivo proibidas de upload pela Plataforma (além de 'FileExtensionsBlackList' em appsettings.json)", + "title": "Lista negra" + }, + "FileExtensionsWhiteList": { + "description": "Extensões de arquivo permitidas para upload pela Plataforma (além de 'FileExtensionsWhiteList' em appsettings.json)", + "title": "Lista branca" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Estado persistido do menu principal", + "title": "Estado persistido do menu principal" + } + }, + "Language": { + "description": "Idioma padrão (código de duas letras da ISO 639-1, não sensível a maiúsculas e minúsculas). Exemplo: pt, en", + "title": "Idioma" + }, + "RegionalFormat": { + "description": "Formato regional padrão (código de localidade CLDR, com traço ou sublinhado como delimitador, não sensível a maiúsculas e minúsculas). Exemplo: pt, pt_BR, sr_Cyrl, sr_Cyrl_RS", + "title": "Formato regional" + }, + "TimeZone": { + "description": "Fuso horário padrão (nome do fuso horário IANA [banco de dados tz], exatamente como no banco de dados, sensível a maiúsculas e minúsculas). Exemplos: America/Sao_Paulo, Europe/Lisbon", + "title": "Fuso horário" + }, + "UseTimeAgo": { + "description": "Quando definido como verdadeiro (o padrão), o sistema exibe a data no formato 'há alguns segundos' sempre que possível", + "title": "Usar formato de tempo decorrido quando possível" + }, + "FullDateThreshold": { + "description": "O formato de tempo decorrido mudará para um formato de data completa após um certo número de unidades de tempo", + "title": "Limite para data completa" + }, + "FullDateThresholdUnit": { + "description": "Unidade do limite para data completa", + "title": "Unidade do limite para data completa" + }, + "Customization": { + "description": "JSON contém configurações de personalização da interface do gerenciador", + "title": "Personalização da interface do gerenciador" + }, + "ShowMeridian": { + "description": "Mostrar indicador de meridiano de tempo (AM ou PM)", + "title": "Mostrar meridiano de tempo" + } + }, + "Cache": { + "Enabled": { + "description": "Esta configuração permite que você ative e desative globalmente o cache para toda a aplicação da Plataforma", + "title": "Ativar ou desativar cache globalmente" + }, + "AbsoulteExpiration": { + "description": "Especifica o tempo máximo que os dados em cache são armazenados no cache. Formato: [-][d.]hh:mm:ss[.fffffff]", + "title": "Tempo de vida global dos objetos no cache" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Status de conta", + "description": "Alterar status de conta" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Common.json index f6396222d69..6bebe5dddf7 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Common.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Common.json @@ -4,65 +4,73 @@ "add": "Добавить", "activate": "Активировать", "assign": "Назначить", - "cancel": "Закрыть", + "cancel": "Отменить", "clear": "Очистить", "clear-all": "Очистить все", - "clone": "Скопировать", + "clone": "Клонировать", "close": "Закрыть", "confirm": "Подтвердить", - "copy-link": "Скопировать ссылку", + "copy-link": "Копировать ссылку", + "copy": "Копировать", "create": "Создать", "cut": "Вырезать", "delete": "Удалить", + "add-all": "Добавить все", + "remove-all": "Удалить все", "download": "Скачать", "edit": "Редактировать", "export": "Экспортировать", - "generate": "Создать", + "generate": "Сгенерировать", "import": "Импортировать", + "import-sample-data": "Импортировать примеры данных", "install": "Установить", "manage": "Управлять", - "more": "Больше", + "more": "Ещё", "no": "Нет", "new-folder": "Новая папка", "new-license": "Продлить лицензию", - "ok": "Ок", + "ok": "ОК", "paste": "Вставить", - "pick-selected": "Выбрать выделенные", - "preview": "Предварительный просмотр", + "pick-selected": "Выбрать выделенное", + "preview": "Предпросмотр", "open-browser": "Открыть в браузере", - "redo": "Переделать", + "redo": "Повторить", "refresh": "Обновить", "remove": "Удалить", "reset": "Сбросить", - "restart": "Перезагрузить", + "restart": "Перезапустить", "save": "Сохранить", "send": "Отправить", - "select-all": "Выбрать Все", + "select-all": "Выбрать все", + "set-to-default": "Установить по умолчанию", "start-export": "Начать экспорт", "settings": "Настройки", - "sign-out": "Выход", + "sign-out": "Выйти", "undo": "Отменить", - "uninstall": "Деинсталлировать", - "unselect-all": "Отменить выделение Всех", + "uninstall": "Удалить", + "unselect-all": "Снять выделение со всех", "update": "Обновить", "upload": "Загрузить", "yes": "Да", "add-new-property": "Добавить новое свойство", - "manage-type-properties": "Управление типом свойств", + "manage-type-properties": "Типы свойств", "manage-profile": "Управление профилем", - "minimize": "Минимизировать", - "maximize": "Максимизировать", + "minimize": "Свернуть", + "maximize": "Развернуть", "stop-sending": "Остановить отправку", - "set-active": "Сделать Активным", + "set-active": "Сделать активным", "reject-user": "Отклонить пользователя", "change-password": "Изменить пароль", - "unlock-account": "Разблокировать учетную запись", + "unlock-account": "Разблокировать аккаунт", + "lock-account": "Заблокировать аккаунт", "today": "Сегодня", "time": "Время", "now": "Сейчас", "date": "Дата", - "see-details": "Подробнее", - "dismiss": "Пропустить", + "see-details": "Посмотреть детали", + "dismiss": "Закрыть", + "hide-empty-property-values": "Скрыть пустые значения", + "show-empty-property-values": "Показать пустые значения", "titles": { "refresh": "Обновить", "new-folder": "Новая папка", @@ -73,12 +81,14 @@ "no-data": "Нет данных", "count": "Количество", "loading": "Загрузка...", - "item-not-found": "Ошибка: не найден" + "item-not-found": "Ошибка: Не найдено" }, "placeholders": { - "n-a": "N/A", - "no-file": "Выбрать файл", - "search-keyword": "Поиск по ключевому слову..." + "n-a": "Н/Д", + "no-file": "Выберите файл", + "search-keyword": "Поиск по ключевому слову...", + "select-value": "Выберите значение", + "select-values": "Выберите значение" }, "dialogs": { "delete": { @@ -89,45 +99,45 @@ "properties": { "short-text": { "title": "Короткий текст", - "description": "Текстовые значения менее 1024 символов." + "description": "Текстовые значения до 1024 символов" }, "long-text": { - "title": "Длинный текст.", - "description": "Текст без ограничения размера." + "title": "Длинный текст", + "description": "Текст без ограничения размера" }, "integer": { - "title": "Целое", - "description": "Целое число." + "title": "Целое число", + "description": "Целое число" }, "decimal": { - "title": "Десятичное Число", - "description": "Десятичное число с точностью 18 и шкалой 4." + "title": "Десятичное число", + "description": "Десятичное число с точностью 18 и масштабом 4" }, "date-time": { "title": "Дата и время", - "description": "Выбрать дату." + "description": "Выберите дату" }, "boolean": { - "title": "Логический тип данных", - "description": "Тип переключения." + "title": "Логическое значение", + "description": "Тип переключателя" }, "html": { "title": "HTML", - "description": "Разметка HTML." + "description": "HTML-разметка" }, "undefined": { "title": "Не определено" }, "image": { "title": "Изображение", - "description": "Тип изображения." + "description": "Тип изображения" } }, "genericValueInput": { "placeholders": { "short-text": "Введите короткий текст", "secure-string": "Введите секретный текст", - "email": "Введите адрес электронной почты", + "email": "Введите email", "url": "Введите URL", "long-text": "Введите длинный текст", "integer": "Введите целое число", @@ -136,20 +146,43 @@ "short-text-multivalue": "Добавить значение", "integer-multivalue": "Добавить целое число", "number-multivalue": "Добавить десятичное число", - "short-text-dictionary": "Выбрать значение", - "short-text-dictionary-multivalue": "Выбрать значение", - "short-text-multilang": "Ввести значение", - "long-text-multilang": "Ввести значение", + "short-text-dictionary": "Выберите значение", + "short-text-dictionary-multivalue": "Выберите значение", + "short-text-multilang": "Введите значение", + "long-text-multilang": "Введите значение", "short-text-multivalue-multilang": "Добавить значение", - "short-text-dictionary-multilang": "Выбрать значение", - "short-text-dictionary-multivalue-multilang": "Выбрать значение", - "long-text-dictionary-multivalue-multilang": "Выбрать значение" - }, - "short-text-input": { - "placeholder": "Введите значение", - "required": "Обязательное поле", - "maxLength": "Значение в данном поле не должно превышать {{number}} символов" + "short-text-dictionary-multilang": "Выберите значение", + "short-text-dictionary-multivalue-multilang": "Выберите значение", + "long-text-dictionary-multivalue-multilang": "Выберите значение" } + }, + "short-text-input": { + "placeholder": "Введите значение", + "required": "Это поле обязательно для заполнения", + "maxLength": "Это поле не должно содержать более {{number}} символов" + }, + "validators": { + "uriWithoutQuery": { + "error": "Неверный формат URI. Убедитесь, что URI не содержит параметров запроса" + } + }, + "errors": { + "generic-error": "Ошибка", + "400": "Неверный запрос", + "401": "Не авторизован", + "403": "Доступ запрещен", + "404": "Не найдено", + "405": "Метод не разрешен", + "406": "Неприемлемо", + "407": "Требуется аутентификация прокси", + "408": "Время ожидания запроса истекло", + "409": "Конфликт", + "429": "Слишком много запросов", + "500": "Внутренняя ошибка сервера", + "501": "Не реализовано", + "502": "Плохой шлюз", + "503": "Сервис недоступен", + "504": "Время ожидания шлюза истекло" } } -} +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Platform.json index 9281fa5628a..326fb814541 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Platform.json +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/ru.VirtoCommerce.Platform.json @@ -2,15 +2,15 @@ "platform": { "menu": { "home": "Главная", - "browse": "Просмотреть", + "browse": "Обзор", "configuration": "Конфигурация", "notifications": "Уведомления", - "more": "Больше", + "more": "Ещё", "settings": "Настройки", "dynamic-properties": "Динамические свойства", "security": "Безопасность", "modules": "Модули", - "export-import": "Экспорт & Импорт", + "export-import": "Экспорт и импорт", "user-profile": "Профиль пользователя", "assets": "Ресурсы", "toggle-favorites": "Shift + Пробел для переключения избранного", @@ -21,13 +21,21 @@ }, "blades": { "system-info": { - "title": "Информация о платформе" + "title": "Информация о платформе", + "labels": { + "clr-version": "Версия CLR", + "environment-name": "Название среды", + "is-64-bit-os": "64-битная операционная система", + "is-64-bit-process": "64-битный процесс", + "database-provider": "Провайдер базы данных" + } }, "asset-list": { "title": "Управление ресурсами", + "bread-crumb-top": "Все ресурсы", "labels": { - "picture": "Картинка", - "name": "Название", + "picture": "Изображение", + "name": "Имя", "size": "Размер", "modified": "Изменено", "actions": "Действия", @@ -38,100 +46,117 @@ "asset-upload": { "title": "Загрузка ресурса", "labels": { - "select-files": "Выбрать файлы", + "select-files": "Выберите файлы", "drag-note": "Перетащите файлы сюда", "progress": "Прогресс", - "asset-uploaded": "Загружено ресурсов." + "asset-uploaded": "Ресурс(ы) загружен(ы)" }, "placeholders": { - "image-url": "Вставьте URL файла" + "image-url": "Вставьте URL файла сюда" } }, "operation-list": { "labels": { - "login": "Вход", + "login": "Логин", "details": "Подробности", "time": "Время" } }, "dynamicObject-list": { "title": "Типы динамических объектов", - "subtitle": "Выбрать тип объекта для управления динамическими свойствами", + "subtitle": "Выберите тип объекта для управления динамическими свойствами", "labels": { - "no-objects": "Нет объектов, поддерживающих динамические свойства." + "no-objects": "Пока нет объектов, поддерживающих динамические свойства" } }, "dynamicProperty-detail": { - "title": "Управление свойствами", - "subtitle": "Управление свойствами", + "title": "Управление свойством", + "subtitle": "Управление свойством", "subtitle-new": "Новое свойство", "labels": { - "property-name": "Название свойства", + "property-name": "Имя свойства", "required": "Обязательное", "multivalue": "Многозначное", "multilingual": "Многоязычное", "dictionary": "Словарь", "description": "Описание", - "display-order": "Отображение заказа", - "display-name": "Отображаемое название", + "display-order": "Порядок отображения", + "display-name": "Отображаемое имя", "value-type": "Тип значения", - "dictionary-values": "Значения словаря", + "dictionary-values": "Словарные значения", "manage-dictionary": "Управление словарем" }, "placeholders": { "description": "Введите описание свойства", - "display-name": "Введите отображаемое название...", - "display-order": "Отображение заказа" + "display-name": "Введите отображаемое имя...", + "display-order": "Порядок отображения" }, "validations": { - "multivalue": "Многозначное свойство может иметь тип ShortText, Integer или Decimal.", - "multilingual": "Только текстовые значения или значения HTML могут быть многоязычными.", - "dictionary": "Поддерживаются только словари типа ShortText." + "multivalue": "Многозначное свойство может иметь только тип значения ShortText, Integer или Decimal", + "multilingual": "Только текст или HTML значение может быть многоязычным", + "dictionary": "Поддерживаются только словари с типом значения ShortText" } }, "dynamicProperty-list": { "subtitle": "Управление динамическими свойствами", "labels": { - "no-properties": "Нет динамических свойств." + "no-properties": "Пока нет динамических свойств" } }, + "notifications-menu": { + "subtitle": "Работа с системой уведомлений" + }, "property-dictionary": { "title": "Значения словаря", "subtitle": "Управление значениями словаря", "labels": { "edit-value": "Редактировать значение", "new-value": "Новое значение", - "dictionary-name": "Название словаря", + "dictionary-name": "Имя записи словаря", "localized-values": "Локализованные значения", "current-values": "Текущие значения", - "name": "Название", + "name": "Имя", "values": "Значения" }, "validations": { - "dictionary-name-required": "Обязательное", - "dictionary-name": "Найдено дублирующее название", - "localized-values-required": "Обязательное", - "localized-values": "Найдено дублирующее название", - "dictionary": "Поддерживаются только словари типа ShortText." + "dictionary-name-required": "Обязательно", + "dictionary-name": "Найдено дублирующееся имя", + "localized-values-required": "Обязательно", + "localized-values": "Найдено дублирующееся имя", + "dictionary": "Поддерживаются только словари с типом значения ShortText" }, "placeholders": { - "dictionary-name": "Введите название", + "dictionary-name": "Введите имя", "localized-values": "Введите значение" } }, "propertyValue-list": { - "title": "Значения свойств", + "title": "Динамические свойства", + "subtitle": "", "labels": { "header": "Значения свойств", - "no-properties": "У этого объекта еще нет динамических свойств. Нажмите 'Управление типами свойств' для создания новых. Закройте и откройте повторно текущий объект для загрузки динамических свойств." + "no-properties": "У этой сущности пока нет динамических свойств. Нажмите 'Типы свойств' и создайте некоторые свойства. Закройте и снова откройте текущее представление сущности, чтобы загрузить динамические свойства" + } + }, + "edit-array": { + "validations": { + "new-value-required": "Обязательно" + }, + "labels": { + "new-value": "Новое значение", + "current-values": "Текущие значения", + "values": "Значения" + }, + "placeholders": { + "value": "Введите значение" } }, "export-main": { "title": "Экспорт данных", "labels": { - "platform-entries": "Позиции платформы", + "platform-entries": "Записи платформы", "choose-modules": "Выберите модули для экспорта", - "download-url": "Загрузить Url", + "download-url": "URL для скачивания", "errors": "Ошибки", "start": "Начало", "end": "Конец" @@ -142,8 +167,8 @@ "description": "Аккаунты и роли" }, "binary": { - "title": "Двоичный код", - "description": "Двоичные данные" + "title": "Бинарные данные", + "description": "Бинарные данные" }, "settings": { "title": "Настройки", @@ -159,17 +184,17 @@ "title": "Импорт данных", "labels": { "start-import": "Начать импорт", - "select-file": "Выберите файл .zip для импорта. Файл должен быть создан путем экспорта данных Commerce Manager.", - "drag-note": "Перетащите файл .zip для импорта. Файл должен быть создан путем экспорта данных Commerce Manager.", - "upload-failed": "Загрузка файла не удалась", + "select-file": "Выберите .zip файл для импорта. Файл должен быть создан экспортом данных Commerce Manager", + "drag-note": "Перетащите .zip файл для импорта. Файл должен быть создан экспортом данных Commerce Manager", + "upload-failed": "Сбой загрузки", "upload-progress": "Прогресс загрузки", - "import-progress": "Процесс импорта", - "import-finished": "Импорт завершён", - "import-data-information": "Информация об импорте данных", + "import-progress": "Прогресс импорта", + "import-finished": "Импорт завершен", + "import-data-information": "Информация об импортируемых данных", "author": "Автор", - "data-file-created": "Создан файл с данными", - "created-platform-version": "Создан в версии платформы", - "platform-entries": "Позиции платформы", + "data-file-created": "Файл данных создан", + "created-platform-version": "Создано в версии платформы", + "platform-entries": "Записи платформы", "choose-modules": "Выберите модули для импорта", "no-data": "Нет данных", "errors": "Ошибки", @@ -182,8 +207,8 @@ "description": "Аккаунты и роли" }, "binary": { - "title": "Двоичный код", - "description": "Двоичные данные" + "title": "Бинарные данные", + "description": "Бинарные данные" }, "settings": { "title": "Настройки", @@ -200,178 +225,92 @@ "menu": { "export": { "title": "Экспорт", - "description": "Данные будут сохранены в файл, чтобы впоследствии их можно было импортировать." + "description": "Данные будут сохранены в файл, чтобы их можно было импортировать позже" }, "import": { "title": "Импорт", - "description": "Импорт данных из экспортированного файла." + "description": "Импорт данных из экспортированного файла" } } }, - "notification-journal-details": { - "title": "Сведения об уведомлении", - "labels": { - "notification-info": "Информация Уведомления", - "display-name": "Отображаемое название", - "source": "Источник", - "sending-gateway": "Канал отправления", - "active": "Активно", - "not-active": "Неактивно", - "start-sending-date": "Начать отправку данных", - "sent-success": "Успешность отправки", - "not-sent": "Не отправлено", - "sent": "Отправлено", - "sent-date": "Отправленные данные", - "sender": "Отправитель", - "recipient": "Получатель", - "sending-attempts-count": "Количество попыток отправки", - "last-fail-attempt-date": "Дата последней неудачной попытки", - "last-fail-attempt-message": "Сообщение последней неудачной попытки" - } - }, - "notifications-edit-template": { - "title": "Изменить шаблон уведомления", - "title-new": "Создать шаблон уведомления", - "labels": { - "note": "Это список параметров уведомления. Вы можете вставить этот код, и значения параметров будут добавлены в Ваш шаблон", - "parameter-name": "Название параметра", - "parameter-description": "Описание параметра", - "paremeter-code": "Код параметра в шаблоне (скопируйте этот код и вставьте в любом месте вашего шаблона)", - "language": "Язык", - "blank-note": "Оставьте поле пустым для использования языка по умолчанию", - "sender": "Отправитель", - "recipient": "Получатель", - "subject": "Тема", - "body": "Основной текст" - }, - "placeholders": { - "language": "Выбрать..." - } - }, - "notifications-menu": { - "subtitle": "Работа с системой уведомлений" - }, - "notification-templates-list": { - "title": "Шаблоны уведомлений", - "labels": { - "subject": "Тема", - "body": "Основной текст", - "language": "Язык" - } - }, - "notifications-test-resolve": { - "title": "Предварительный просмотр уведомления", - "subtitle": "Введите тестовые данные для {{type}}", - "labels": { - "test": "Тест", - "enter-test-data": "Введите тестовые данные" - } - }, - "notifications-test-send": { - "title": "Отправка уведомлений", - "subtitle": "Введите тестовые данные для {{type}}", - "labels": { - "send": "Отправка", - "enter-test-data": "Введите тестовые данные" - } - }, - "notifications-journal": { - "title": "История уведомлений", - "subtitle": "Просмотр истории уведомлений", - "labels": { - "display-name": "Отображаемое название", - "recipient": "Получатель", - "sent-date": "Дата отправки", - "channel": "Канал", - "error": "Ошибка", - "processing": "Обработка", - "success": "Успех", - "no-notifications": "Пока нет уведомлений" - } - }, - "notifications-list": { - "title": "Уведомления", - "subtitle": "Просмотр шаблонов уведомлений", - "labels": { - "no-notifications": "Пока нет зарегистрированных уведомлений" - } - }, "resolve-result": { "title": "Предварительный просмотр результата", "labels": { "subject": "Тема", - "body": "Основной текст" + "body": "Тело" } }, "module-settings-detail": { - "title": "Настройки модуля", - "hide-description": "Скрыть" + "title": "Настройки модуля" }, "module-wizard-progress-step": { "title-install": "Установка модуля", "title-update": "Обновление модуля", - "title-uninstall": "Деинсталляция модуля", + "title-uninstall": "Удаление модуля", "labels": { "start": "Начало", "end": "Конец", - "progress-messages": "Сообщение о ходе выполнения", - "process-completed": "Процесс установки модуля завершен.", - "restart-application": "Перезапустить приложение сейчас или позже." + "progress-messages": "Сообщения о прогрессе", + "process-completed": "Процесс установки модуля завершен", + "restart-application": "Перезапустить приложение сейчас или позже" } }, "module-detail": { "title": "Информация о модуле", "labels": { "i-accept-the": "Я принимаю", - "license-link": "лицензия", + "license-link": "лицензионное", "license": "Лицензия", - "agreement": "соглашение.", + "agreement": "соглашение", "install-from-file": "Установить / обновить модуль из файла", - "select-module-file": "Загрузить файл модуля (.zip) за пределами центрального хранилища модулей", + "select-module-file": "Загрузите файл модуля (.zip) из внешнего источника за пределами центрального репозитория модулей", "upload-progress": "Прогресс загрузки", "module-info": "Информация о модуле", "title": "Название", - "official": "Официальный модуль {{$owner}}", - "owners": "Разработан {{$owner}}", + "official": "Официальный модуль от {{$owner}}", + "owners": "Разработано {{$owner}}", "author": "Автор", "authors": "Авторы", "id": "ID", "version": "Версия", - "project-information": "Информация о Проекте", + "project-information": "Информация о проекте", "description": "Описание", - "platform-version": "Версия Платформы", + "platform-version": "Версия платформы", "dependencies": "Зависимости", + "optional-dependencies": "Опциональные зависимости", "tags": "Теги", - "install-version": "Установленная версия", - "errors": "Ошибки" + "install-version": "Установить версию", + "errors": "Ошибки", + "update-version": "Обновить {{id}} до" } }, "modules-main": { "title": "Модули", "labels": { "updates": "Обновления", - "available": "Доступный", - "installed": "Установленный", + "available": "Доступные", + "installed": "Установленные", "withErrors": "Ошибки", - "advanced": "Усовершенствованный" + "advanced": "Расширенные", + "browse": "Обзор" } }, "modules-list": { - "subtitle": "Управление Модулями", + "subtitle": "Управление модулями", "labels": { - "grouping": "Показать связки Модулей", + "grouping": "Показать наборы модулей", "ungrouped": "Другие", - "no-updates": "Обновления не найдены.", - "no-modules-part1": "Нет новых Модулей для установки.", - "no-installed-modules": "Установленные Модули не найдены.", + "no-updates": "Обновлений не найдено", + "no-modules": "Нет новых модулей для установки", + "no-installed-modules": "Установленных модулей не найдено", "icon": "Иконка", - "up-to-date": "Модуль обновлен", - "update-available": "Доступно обновление для данного модуля", + "up-to-date": "Модуль актуален", + "update-available": "Доступно обновление для этого модуля", "module": "Модуль", "version": "Версия", "author": "Автор", "installed": "Установленные модули", - "manual-install-warning": "Внимание! Ручная установка модулей отключена, поскольку RefreshProbingFolderOnStart установлен в false." + "manual-install-warning": "Внимание! Модули, установленные вручную, не запустятся, так как RefreshProbingFolderOnStart имеет значение false" } }, "history": { @@ -379,36 +318,43 @@ "subtitle": "История событий", "labels": { "type": "Тип", - "title": "Название", + "title": "Заголовок", "created": "Создано", "description": "Описание" } }, "historyDetailDefault": { - "title": "Информация о событии", - "subtitle": "Информация о событии", + "title": "Детали события", + "subtitle": "Детали события", "labels": { "start": "Начало", "end": "Конец", + "elapsed": "Прошло времени", "errors": "Ошибки", - "stats": "Обработано - {{ processedCount }} из {{ totalCount }} документов" + "stats": "Обработано {{ processedCount }} из {{ totalCount }} записей" } }, "menuHeader": { "labels": { "history": "История", - "clear-recent": "Очистить все последние" + "clear-recent": "Очистить все недавние" } }, "account-changePassword": { "labels": { + "title": "Пожалуйста, введите новый пароль", + "login": "Логин", + "force-change-info": "Срок действия вашего пароля истек. Вы должны изменить пароль, чтобы продолжить использование менеджера", "current-password": "Текущий пароль", "new-password": "Новый пароль", - "repeat-password": "Повторите пароль" + "repeat-password": "Повторите новый пароль", + "cancel": "Отмена", + "save": "Изменить", + "fail": "Извините, мы не смогли сбросить пароль для этого пользователя" }, "validations": { - "current-password": "Необходимо", - "new-password": "Старый и новый пароли являются одинаковыми!", + "current-password": "Обязательно", + "new-password": "Старый и новый пароли совпадают!", "repeat-password": "Новые пароли не совпадают!" }, "placeholders": { @@ -418,21 +364,23 @@ } }, "account-resetPassword": { - "subtitle": "Смена пароля", + "subtitle": "Изменить пароль пользователя", "labels": { "new-password": "Новый пароль", "repeat-password": "Повторите пароль", - "force-password-change": "Требовать смены пароля при следующем входе" + "force-password-change": "Принудительное изменение пароля для этого пользователя при следующем входе в систему" }, "validations": { "repeat-password": "Новые пароли не совпадают!", - "invalid-token": "Токен смены пароля некорректен или срок его действия истёк", - "password-too-weak": "Новый пароль не удовлетворяет одной или нескольким политикам безопасности паролей:", - "passwordTooShort": "Длина паролей должна составлять {{parameter}} или более символов", - "passwordRequiresLower": "Пароли должны содержать хотя бы одну строчную букву ('a'-'z')", - "passwordRequiresUpper": "Пароли должны содержать хотя бы одну заглавную букву ('A'-'Z')", - "passwordRequiresDigit": "Пароли должны содержать хотя бы одну цифру ('0'-'9')", - "passwordRequiresNonAlphanumeric": "Пароли должны содержать хотя бы один знак препинания или другой специальный символ" + "invalid-token": "Токен сброса пароля недействителен или истек", + "password-too-weak": "Новый пароль не соответствует одному или нескольким правилам безопасности паролей:", + "passwordTooShort": "Пароль должен содержать не менее {{parameter}} символов", + "passwordRequiresUniqueChars": "Пароль должен содержать как минимум {{parameter}} различных символов", + "passwordRequiresLower": "Пароль должен содержать хотя бы одну строчную букву ('a'-'z')", + "passwordRequiresUpper": "Пароль должен содержать хотя бы одну заглавную букву ('A'-'Z')", + "passwordRequiresDigit": "Пароль должен содержать хотя бы одну цифру ('0'-'9')", + "passwordRequiresNonAlphanumeric": "Пароль должен содержать хотя бы один не буквенно-цифровой символ", + "recentPasswordUsed": "Вы уже использовали этот пароль. Выберите другой" }, "placeholders": { "new-password": "Введите новый пароль", @@ -440,86 +388,100 @@ } }, "account-detail": { - "title-new": "Новая учётная запись", + "title-new": "Новая учетная запись", "labels": { "user-information": "Информация о пользователе", "is-administrator": "Администратор", - "account-type": "Тип аккаунта", - "login": "Вход", - "account-state": "Состояние аккаунта", - "account-email": "Адрес электронной почты", - "locked-state": "Заблокирован", - "status": "Статус" + "account-type": "Тип учетной записи", + "login": "Логин", + "account-state": "Состояние учетной записи", + "account-email": "Email", + "locked-state": "Статус блокировки", + "status": "Статус", + "verified": "Подтвержден", + "resend-link": "Отправить ссылку повторно", + "link-sent": "Ссылка была отправлена", + "last-login-date": "Дата последнего входа" }, "placeholders": { - "account-type": "Выбрать ...", - "email": "Введите адрес электронной почты", + "account-type": "Выберите ...", + "email": "Введите email", "user-name": "Введите имя пользователя", - "status": "Выбрать ..." + "status": "Выберите ..." } }, "account-list": { "title": "Пользователи", - "subtitle": "Сервис безопасности", + "subtitle": "Служба безопасности", "labels": { "name": "Имя", - "account-type": "Тип аккаунта", - "login": "Вход", - "state": "Состояние" + "account-type": "Тип учетной записи", + "login": "Логин", + "state": "Состояние", + "status": "Статус" + } + }, + "account-api": { + "labels": { + "api-key": "API ключ", + "is-active": "активен" + }, + "placeholders": { + "api-key": "Введите API ключ" } }, "role-detail": { - "subtitle": "Сведения о роли", + "subtitle": "Детали роли", "labels": { - "summary": "Резюме", - "name": "Название", + "summary": "Сводка", + "name": "Имя", "description": "Описание", - "assigned-permissions": "Установленные права доступа", - "permission-name": "Название", - "assigned-scopes": "Установленная сфера действия", - "no-permissions-assigned": "Права доступа не заданы" + "assigned-permissions": "Назначенные разрешения", + "permission-name": "Имя", + "assigned-scopes": "Назначенные области", + "no-permissions-assigned": "Нет назначенных разрешений" }, "placeholders": { - "name": "Введите название", + "name": "Введите имя", "description": "Введите описание" } }, "account-roles": { - "subtitle": "Назначение ролей", + "subtitle": "Назначить роли", "labels": { - "select-roles": "Выберите роль для назначения", - "no-roles": "Роли для назначения отсутствуют." + "select-roles": "Назначьте роли", + "no-roles": "Нет назначаемых ролей" } }, "account-roles-list": { "title": "", "labels": { - "assigned-roles": "Установленные роли", - "no-assigned": "Роли не установлены." + "assigned-roles": "Назначенные роли", + "no-assigned": "Нет назначаемых ролей" } }, "permission-scopes": { - "subtitle": "Конфигурация разрешенных сфер деятельности", + "subtitle": "Настройка прав доступа", "labels": { - "select-bounded-scopes": "Выбрать ограниченную сферу", - "selected": "Выбраны", - "scope-name": "Название и параметры сферы деятельности", - "no-scopes": "Нет сфер деятельности." + "select-bounded-scopes": "Выберите права доступа", + "selected": "Выбрано", + "scope-name": "Название диапазона прав и параметры", + "no-scopes": "Диапазон прав не выбран" } }, "role-permissions": { - "subtitle": "Назначение прав доступа", + "subtitle": "Назначить права", "labels": { - "select-permissions": "Выберите права доступа для назначения" + "select-permissions": "Выберите права" } }, "new-role-wizard": { - "title": "Новая Роль", + "title": "Новая роль", "labels": { - "summary": "Резюме", + "summary": "Сводка", "name": "Название", "description": "Описание", - "assign-permissions": "Назначить права доступа" + "assign-permissions": "Назначьте права" }, "placeholders": { "name": "Введите название", @@ -528,68 +490,120 @@ }, "role-list": { "title": "Роли", - "subtitle": "Сервис безопасности", + "subtitle": "Служба безопасности", "labels": { "name": "Название" } }, + "oauthapps": { + "labels": { + "clientId": "ID клиента", + "displayName": "Отображаемое имя", + "type": "Тип", + "clientSecret": "Секрет клиента", + "assigned-permissions": "Назначенные права", + "redirectUris": "URI перенаправления", + "postLogoutRedirectUris": "URI перенаправления после выхода" + }, + "placeholders": { + "clientId": "Введите ID клиента", + "displayName": "Введите отображаемое имя", + "type": "Введите тип", + "clientSecret": "Введите секрет клиента" + } + }, + "oauthapps-list": { + "title": "OAuth приложения", + "subtitle": "Служба безопасности" + }, + "oauthapps-detail": { + "title": "Редактировать OAuth приложение", + "title-new": "Создать OAuth приложение", + "subtitle": "Служба безопасности", + "labels": { + "clientSecret-warning": "Внимание! Скопируйте секрет сейчас. Он будет скрыт после закрытия блейда", + "urls": "URL-адреса" + }, + "blades": { + "edit-redirectUris": { + "title": "URI перенаправления", + "subtitle": "Управление URI перенаправления" + }, + "edit-postLogoutRedirectUris": { + "title": "URI перенаправления после выхода", + "subtitle": "Управление URI перенаправления после выхода" + } + } + }, "login": { "labels": { "sign-in": "Вход в {{title}} Менеджер", "login": "Логин", "password": "Пароль", "remember-me": "Запомнить меня", - "external-sign-in": "Войти при помощи {{displayName}}", + "external-sign-in": "Войти через {{displayName}}", "forgot-password": "Забыли пароль?", "log-in": "Войти", - "log-in-placeholder": "Введите свой адрес электронной почты или имя пользователя", - "password-placeholder": "Введите свой пароль", - "or": "или" + "log-in-placeholder": "Введите ваш email или имя пользователя", + "password-placeholder": "Введите ваш пароль", + "azure-log-in-label": "Войти в админ-сайт через Azure", + "password-log-in-type": "Системный пользователь", + "or": "или", + "signing-in": "Выполняется вход..." } }, "forgotpassword": { "title": "Забыли пароль?", "labels": { - "login": "Логин или адрес электронной почты", - "description": "Мы вышлем Вам письмо с инструкциями по восстановлению пароля.", - "success": "Письмо с инструкциями было отправлено.", - "fail": "К сожалению, пароль для данного пользователя не может быть восстановлен.", + "login": "Логин или email", + "description": "Мы отправим вам email с инструкциями по сбросу пароля", + "success": "Email с инструкциями был отправлен вам", + "fail": "Извините, мы не смогли сбросить пароль для этого пользователя", "back": "Назад", - "submit": "Принять" + "submit": "Отправить", + "time-limit": "Вы можете попробовать снова через {{countdown}}", + "time-limit-end": "Вы можете попробовать снова сейчас" }, "placeholders": { - "login-or-email": "Пожалуйста, введите логин или адрес электронной почты" + "login-or-email": "Введите логин или email" + } + }, + "access-denied": { + "title": "Доступ запрещен", + "labels": { + "message": "У вас нет доступа к этому ресурсу. Пожалуйста, обратитесь к вашему администратору", + "button": "Войти с другими учетными данными" } }, "resetpassword": { - "title": "Восстановление пароля", + "title": "Сброс пароля", "labels": { - "success": "Ваш пароль был восстановлен", - "fail": "К сожалению, пароль для данного пользователя не может быть восстановлен.", - "submit": "Восстановить", + "success": "Ваш пароль был сброшен", + "fail": "Извините, мы не смогли сбросить пароль для этого пользователя", + "submit": "Сбросить", "log-in": "Войти" } }, "license": { "title": "Текущая лицензия", - "title-new": "Новая активация лицензии", + "title-new": "Активация новой лицензии", "license-info": "Информация о лицензии", "license-activation": "Активация лицензии", "labels": { - "info-running-no-license": "Эта лицензия Virto Commerce работает на", - "info-open-source-license": "Лицензия Сообщества Open Source.", - "info0": "Приобретение или продление лицензии:", - "info1": "Отправить ", - "info2": "Мы обработаем Ваш запрос и вскоре свяжемся с Вами.", - "info3": "После получения \"Кода Активации\" и / или файла лицензии необходимо заполнить одно из полей активации ниже.", - "info4": "Система отобразит новую информацию о лицензии. Просмотрите ее и нажмите \"Активировать\" для подтверждения.", + "info-running-no-license": "Эта версия Virto Commerce работает на", + "info-open-source-license": "лицензии Open Source Community", + "info0": "Получение или продление лицензии:", + "info1": "Отправьте ", + "info2": "Мы обработаем ваш запрос и свяжемся с вами в ближайшее время", + "info3": "После получения \"Кода активации\" и/или файла лицензии, заполните одно из полей активации ниже", + "info4": "Система отобразит информацию о новой лицензии. Проверьте ее и нажмите \"Активировать\" для подтверждения", "customer": "Лицензия выдана", "type": "Тип", - "expiration": "Окончание", - "email": "Электронная почта клиента", - "request-license": "Форма запроса лицензии.", - "code-descr": "Введите полученный с лицензией \"Код Активации\" и нажмите [Enter]. Это самый быстрый способ активировать лицензию. (Требуется подключение к Интернету)", - "file-descr": "По желанию предоставляется файл с полученной Лицензией. (Активация оффлайн)", + "expiration": "Срок действия", + "email": "Email клиента", + "request-license": "Форма запроса лицензии", + "code-descr": "Введите полученный \"Код активации\" лицензии и нажмите [Enter]. Это самый быстрый способ активации лицензии (требуется подключение к интернету)", + "file-descr": "Или предоставьте полученный файл лицензии (офлайн активация)", "upload-progress": "Прогресс загрузки", "errors": "Ошибка активации" }, @@ -600,20 +614,20 @@ "new-account-wizard": { "labels": { "login": "Логин", - "email": "Электронная почта", + "email": "Email", "password": "Пароль", "repeat-password": "Повторите пароль", - "assign-roles": "Установленные роли" + "assign-roles": "Назначьте роли" }, "placeholders": { - "email": "Введите адрес электронной почты", + "email": "Введите email", "login": "Введите логин", "password": "Введите новый пароль", "repeat-password": "Повторите новый пароль" }, "validations": { - "repeat-password": "Введённые пароли не совпадают!", - "password-too-weak": "Введённый пароль не удовлетворяет одной или нескольким политикам безопасности паролей:" + "repeat-password": "Введенные пароли не совпадают!", + "password-too-weak": "Введенный пароль не соответствует одной или нескольким правилам безопасности паролей:" } }, "security-main": { @@ -624,14 +638,14 @@ "title": "Настройки" }, "setting-dictionary": { - "subtitle": "Управление значениями словаря", + "subtitle": "Управление словарными значениями", "labels": { "new-value": "Пожалуйста, введите значение", - "current-values": "Текущее значение", + "current-values": "Текущие значения", "value": "Значение" }, "validations": { - "new-value-required": "Необходимо", + "new-value-required": "Обязательно", "new-value": "Найдено дублирующее значение" }, "placeholders": { @@ -639,36 +653,42 @@ } }, "settings-detail": { - "title": "Настройки значений" + "title": "Значения настроек", + "hide-description": "Скрыть" }, "settingGroup-list": { "title": "Настройки", "bread-crumb-top": "Все настройки" }, + "settings-uploader": { + "drag-drop-comment": "Перетащите файл сюда", + "or": "или", + "browse-your-files": "выберите файлы" + }, "localizable-setting-value-list": { "subtitle": "Управление значениями словаря" }, "localizable-setting-value-details": { - "title": "Редактирование значения словаря", + "title": "Редактировать значение словаря", "alias": "Системное значение" }, "user-profile": { "title": "Профиль пользователя", "labels": { "language": "Язык", - "language-description": "Язык отображения. Clear to use browser or fallback language.", + "language-description": "Язык отображения. Очистите, чтобы использовать язык браузера или язык по умолчанию", "regional-format": "Региональный формат", - "regional-format-description": "Региональный формат номеров, валюты, даты и времени. Clear to use browser or fallback regional format.", + "regional-format-description": "Региональный формат чисел, валюты, даты и времени. Очистите, чтобы использовать формат браузера или формат по умолчанию", "time-zone": "Часовой пояс", - "time-zone-description": "Текущий часовой пояс пользователя в формате IANA (tz database). Выберите ближайший город в вашем часовом поясе. Clear to use browser or fallback time zone.", - "use-time-ago": "Используйте time ago формат, если это возможно", - "full-date-threshold-group": "Используйте полный формат даты для дат, раньше...", + "time-zone-description": "Текущий часовой пояс пользователя в формате IANA (база данных tz). Выберите ближайший город в вашем часовом поясе. Очистите, чтобы использовать часовой пояс браузера или пояс по умолчанию", + "use-time-ago": "Использовать формат 'время назад', если это возможно", + "full-date-threshold-group": "Использовать полный формат даты для дат, предшествующих...", "full-date-threshold-description": "Числовое значение единиц времени", - "full-date-threshold-unit-description": "Единица времени (то есть часы или годы)" + "full-date-threshold-unit-description": "Единица времени (например, часы или годы)" }, "placeholders": { "full-date-threshold": "Введите пороговое значение", - "full-date-threshold-unit": "Выберите измерение для даты порогового значения" + "full-date-threshold-unit": "Выберите единицу изменерения порогового значения" }, "full-date-threshold-units": { "Never": "Никогда", @@ -686,34 +706,39 @@ "templates": { "sampleDataChoose": { "labels": { - "choose-sample-data-type": "Выберите образец типа данных", + "choose-sample-data-type": "Выберите тип примера данных", "size": "размер", "version": "версия" } }, "sampleDataInitialization": { "labels": { - "sample-data-initialization": "Пример инициализации данных", - "starting-initialization": "Запуск инициализации исходных данных...", + "sample-data-initialization": "Инициализация примера данных", + "starting-initialization": "Начало инициализации примера данных...", "errors": "Ошибки", "start": "Начало", "end": "Конец" } }, "licensing": { - "license-absent": "Лицензия сообщества", - "license-present": "Лицензия {{type}}, действительно до {{expirationDate | amParse | date}}", - "community": "Работа с общественной версией, нажмите, чтобы запросить коммерческую лицензию.", - "expired": "Срок действия лицензии истёк {{expirationDate | amParse | date}}, пожалуйста, обновите.", + "license-absent": "Общественная лицензия", + "license-present": "Лицензия {{type}}, истекает {{expirationDate | amParse | date}}", + "community": "Работает общественная версия, нажмите для запроса коммерческой лицензии", + "expired": "Ваша лицензия истекла {{expirationDate | amParse | date}}, пожалуйста, продлите ее", "purchase": "Купить", - "renew": "Обновить", - "expiration-date": "Действительна до" + "renew": "Продлить", + "expiration-date": "Дата истечения" + }, + "password-expiry": { + "expire-days": "Для защиты вашей учетной записи вам нужно будет изменить пароль через {{count}} дней. ", + "expire-today": "Для защиты вашей учетной записи вам нужно будет изменить пароль сегодня. ", + "change-link": "Изменить сейчас" }, "modulesAutoInstallation": { "labels": { "module-auto-installation": "Автоматическая установка модулей", - "loading": "Поиск информации о модулях...", - "finished": "Установка завершена. Нажмите Перезагрузить, чтобы продолжить.", + "loading": "Получение информации о модулях...", + "finished": "Установка завершена. Нажмите Перезапустить, чтобы продолжить", "start": "Начало", "end": "Конец" } @@ -731,8 +756,8 @@ "title": "Настройки" }, "accountApi": { - "title": "Аккаунты API", - "blade-subtitle": "Аккаунты API" + "title": "API ключ", + "blade-subtitle": "API ключ" }, "accountRoles": { "title": "Роли", @@ -741,67 +766,75 @@ }, "dialogs": { "folders-delete": { - "title": "Подтверждение удаления", + "title": "Подтвердить удаление", "message": "Вы уверены, что хотите удалить выбранные папки или файлы?" }, "properties-save": { - "title": "Сохранение изменений", + "title": "Сохранить изменения", "message": "Свойства были изменены. Вы хотите сохранить изменения?" }, "notification-template-save": { - "title": "Сохранение изменений", + "title": "Сохранить изменения", "message": "Шаблон уведомления был изменен. Вы хотите сохранить изменения?" }, "role-save": { - "title": "Сохранение изменений", + "title": "Сохранить изменения", "message": "Роль была изменена. Вы хотите сохранить изменения?" }, "roles-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные Роли?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить выбранные роли?" }, "account-save": { - "title": "Сохранение изменений", - "message": "Аккаунт был изменен. Вы хотите сохранить изменения?" + "title": "Сохранить изменения", + "message": "Учетная запись была изменена. Вы хотите сохранить изменения?" }, "account-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные Аккаунты?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить выбранные учетные записи?" + }, + "oauthapps-save": { + "title": "Сохранить изменения", + "message": "OAuth приложение было изменено. Вы хотите сохранить изменения?" + }, + "oauthapps-delete": { + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить выбранное OAuth приложение?" }, "dynamic-property-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить это Динамическое Свойство?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить это динамическое свойство?" }, "settings-value-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные Значения?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить выбранные значения?" }, "settings-save": { - "title": "Сохранение изменений", + "title": "Сохранить изменения", "message": "Настройки были изменены. Вы хотите сохранить изменения?" }, "settings-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить выбранные Настройки?" + "title": "Подтвердить удаление", + "message": "Настройки были изменены. Вы хотите сохранить изменения?" }, "localizable-setting-value-delete": { - "title": "Подтверждение удаления", + "title": "Подтвердить удаление", "message": "Вы уверены, что хотите удалить выбранные значения словаря?" }, "localizable-setting-value-save": { - "title": "Сохранение изменений", - "message": "Значение словаря было изменено. Вы хотите сохранить изменения?" + "title": "Сохранить изменения", + "message": "Это словарное значение было изменено. Вы хотите сохранить изменения?" }, "email-sending-success": { - "title": "Успех отправки", - "message": "Письмо было успешно отправлено!" + "title": "Успешная отправка", + "message": "Электронное письмо было успешно отправлено!" }, "email-send-error": { "title": "Ошибка при отправке", - "message": "Письмо не было отправлено! Ошибка: {{error}}" + "message": "Электронное письмо не было отправлено! Ошибка: {{error}}" }, "dictionary-items-delete": { - "title": "Подтверждение удаления", + "title": "Подтвердить удаление", "message": "Вы уверены, что хотите удалить {{quantity}} выбранных элементов словаря?" }, "module-action": { @@ -811,32 +844,81 @@ "message0-install": "Вы собираетесь установить:", "message0-update": "Вы собираетесь обновить:", "message0-delete": "Вы собираетесь удалить:", - "message1-install": "Также будут установлены следующие зависимости:", - "message1-delete": "Также будут удалены следующие связанные модули:", - "message2-install": "Установить подбор и зависимости?", - "message2-update": "Обновить подбор и зависимости?", - "message2-delete": "Удалить этот и ВСЕ зависящие модули?" + "message1-install": "Следующие зависимости также будут установлены:", + "message1-delete": "Следующие зависимые модули также будут удалены:", + "message2-install": "Установить выбранное и зависимости?", + "message2-update": "Обновить выбранное и зависимости?", + "message2-delete": "Удалить это и ВСЕ зависимые модули?" }, "module-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить этот Модуль?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить этот модуль?" }, "api-key-delete": { - "title": "Подтверждение удаления", - "message": "Вы уверены, что хотите удалить этот ключ API?" + "title": "Подтвердить удаление", + "message": "Вы уверены, что хотите удалить этот API ключ?" }, "app-restart": { "title": "Завершение работы приложения", - "message": "Приложению требуется перезапуск (в зависимости от среды, хост перезапустит его, либо потребуется сделать это вручную). Вы действительно хотите завершить работу приложения?" + "message": "Перезапустите приложение, чтобы применились изменения. В зависимости от вашего хостинг-сервиса, приложение может перезапуститься автоматически или может потребоваться ручной перезапуск. Вы уверены, что хотите закрыть приложение сейчас?" }, "error-details": { - "title": "Сведения об ошибке" + "title": "Подробнее об ошибке" + }, + "impersonate-no-url": { + "title": "Вход от имени", + "message": "URL магазина не был добавлен в настройки магазина. Пожалуйста, обратитесь к администратору" + }, + "asset-upload-error": { + "title": "Ошибка загрузки", + "message": "Выберите папку! Нельзя загрузить файл в корневую директорию!" + }, + "run-import": { + "title": "Подтверждение импорта", + "message": "Вы уверены, что хотите импортировать примеры данных?" }, "create-folder": { - "title": "Название директории должно следовать следующим правилам:\n Длина имени дериктории от 3 до 63 символов.\n Имя дериктории начинается с цифры или буквы и содержит только цифры(0-9), буквы(а-я) и символ подчёркивания (-).\n За каждым символом подчёркивания полжна следовать буква или цифра. Повторяющиеся символы подчёркивания не допустимы!.\n Все буквы должны быть в нижнем регистре." + "title": "Имя папки должно соответствовать следующим правилам именования:\n Имя папки должно быть длиной от 3 до 63 символов.\n Имя папки должно начинаться с буквы или цифры и может содержать только буквы, цифры и дефис (-).\n Каждый дефис (-) должен непосредственно предшествовать букве или цифре и следовать за ней; последовательные дефисы не допускаются.\n Все буквы в имени папки должны быть в нижнем регистре" + }, + "storefront-cache-reset-successfully": { + "title": "Сброс кэша", + "message": "Кэш фронтенд-приложения был успешно сброшен" } + }, + "commands": { + "login-on-behalf": "Войти от имени", + "reset-storefront-cache": "Сбросить кэш" } }, + "permissions": { + "platform:asset:access": "Просмотр ресурсов в главном меню", + "platform:asset:delete": "Удаление ресурсов платформы", + "platform:asset:update": "Изменение ресурсов платформы", + "platform:asset:create": "Загрузка новых ресурсов платформы", + "platform:asset:read": "Скачивание ресурсов платформы", + "platform:module:read": "Просмотр деталей модуля", + "platform:module:access": "Просмотр модулей в главном меню", + "platform:module:manage": "Установка/удаление модулей", + "platform:setting:read": "Чтение настроек платформы", + "platform:setting:access": "Просмотр настроек в главном меню", + "platform:setting:update": "Изменение настроек платформы", + "platform:dynamic_properties:read": "Просмотр деталей динамических свойств", + "platform:dynamic_properties:create": "Создание новых динамических свойств", + "platform:dynamic_properties:access": "Просмотр динамических свойств в главном меню", + "platform:dynamic_properties:update": "Изменение динамических свойств", + "platform:dynamic_properties:delete": "Удаление динамических свойств", + "platform:security:read": "Просмотр деталей пользователей и ролей", + "platform:security:create": "Создание новых пользователей и ролей", + "platform:security:access": "Просмотр безопасности в главном меню", + "platform:security:update": "Изменение пользователей и ролей", + "platform:security:delete": "Удаление пользователей и ролей", + "platform:security:verifyEmail": "Изменение состояния подтверждения и отправка письма для подтверждения", + "background_jobs:manage": "Доступ к консоли Hangfire", + "platform:exportImport:access": "Просмотр Экспорта/Импорта в главном меню", + "platform:import": "Импорт данных платформы и модулей", + "platform:export": "Экспорт данных платформы и модулей", + "platform:security:loginOnBehalf": "Вход от имени клиента" + }, "settings": { "VirtoCommerce": { "Core": { @@ -846,6 +928,118 @@ "description": "Список доступных языков" } } + }, + "ModulesAutoInstalled": { + "description": "Флаг указывает, что модули установлены автоматически", + "title": "Модули установлены" + }, + "ModulesAutoInstallState": { + "title": "Состояние автоустановки модулей", + "description": "Текущее состояние мастера автоустановки модулей" + }, + "SetupStep": { + "title": "Текущий шаг установки", + "description": "Текущий шаг в мастере установки" + }, + "SampleDataState": { + "title": "Состояние примера данных", + "description": "Текущее состояние мастера примера данных" + }, + "SendDiagnosticData": { + "title": "Отправлять диагностические данные", + "description": "Отправлять диагностические данные VC Platform в VC. Может быть отключено только при покупке лицензии" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "Словарь для возможных типов учетных записей", + "title": "Типы учетных записей" + }, + "DefaultAccountType": { + "title": "Тип учетной записи по умолчанию", + "description": "Значение по умолчанию для типа учетной записи при создании новой учетной записи" + }, + "DefaultAccountStatus": { + "title": "Статус учетной записи по умолчанию", + "description": "Значение по умолчанию для статуса учетной записи при создании новой учетной записи" + }, + "DefaultExternalAccountStatus": { + "title": "Статус внешней учетной записи по умолчанию", + "description": "Значение по умолчанию для статуса учетной записи при создании новой учетной записи во время внешнего входа" + }, + "EnablePruneExpiredTokensJob": { + "description": "Включает очистку просроченных и недействительных токенов/авторизаций", + "title": "Очистка просроченных токенов" + }, + "CronPruneExpiredTokensJob": { + "description": "Cron-выражение для задачи очистки просроченных и недействительных токенов/авторизаций", + "title": "Cron для задачи очистки токенов" + }, + "FileExtensionsBlackList": { + "description": "Расширения файлов, запрещенные для загрузки платформой (дополнительно к 'FileExtensionsBlackList' в appsettings.json)", + "title": "Черный список" + }, + "FileExtensionsWhiteList": { + "description": "Расширения файлов, разрешенные для загрузки платформой (дополнительно к 'FileExtensionsWhiteList' в appsettings.json)", + "title": "Белый список" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "Сохраненное состояние главного меню", + "title": "Сохраненное состояние главного меню" + } + }, + "Language": { + "description": "Язык по умолчанию (двухбуквенный код из ISO 639-1, без учета регистра). Пример: ru, en", + "title": "Язык" + }, + "RegionalFormat": { + "description": "Региональный формат по умолчанию (код локали CLDR, с тире или подчеркиванием в качестве разделителя, без учета регистра). Пример: ru, ru_RU, sr_Cyrl, sr_Cyrl_RS", + "title": "Региональный формат" + }, + "TimeZone": { + "description": "Часовой пояс по умолчанию (название часового пояса IANA [база данных tz], точно как в базе данных, с учетом регистра). Примеры: Europe/Moscow, America/New_York", + "title": "Часовой пояс" + }, + "UseTimeAgo": { + "description": "Когда установлено значение true (по умолчанию), система отображает дату в формате 'несколько секунд назад', если это возможно", + "title": "Использовать формат 'время назад', когда возможно" + }, + "FullDateThreshold": { + "description": "Формат 'время назад' переключится на полный формат даты через определенное количество единиц времени", + "title": "Порог перехода на полный формат даты" + }, + "FullDateThresholdUnit": { + "description": "Единица измерения порога перехода на полный формат даты", + "title": "Единица порога перехода на полный форматы даты" + }, + "Customization": { + "description": "JSON содержит персональные настройки интерфейса менеджера", + "title": "Настройка интерфейса менеджера" + }, + "ShowMeridian": { + "description": "Показывать индикатор времени суток (AM или PM)", + "title": "Показывать индикатор времени суток" + } + }, + "Cache": { + "Enabled": { + "description": "Эта настройка позволяет включать и отключать кэширование для всей платформы", + "title": "Включить или отключить кэширование" + }, + "AbsoulteExpiration": { + "description": "Указывает максимальное время хранения кэшированных данных в кэше. Формат: [-][д.]чч:мм:сс[.fffffff]", + "title": "Глобальное время жизни объектов в кэше" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "Статусы учетных записей", + "description": "Изменение статусов учетных записей" + } } } } diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Common.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Common.json new file mode 100644 index 00000000000..ae7241f084e --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Common.json @@ -0,0 +1,188 @@ +{ + "platform": { + "commands": { + "add": "添加", + "activate": "激活", + "assign": "分配", + "cancel": "取消", + "clear": "清除", + "clear-all": "清除所有", + "clone": "克隆", + "close": "关闭", + "confirm": "确认", + "copy-link": "复制链接", + "copy": "复制", + "create": "创建", + "cut": "剪切", + "delete": "删除", + "add-all": "添加所有", + "remove-all": "删除所有", + "download": "下载", + "edit": "编辑", + "export": "导出", + "generate": "生成", + "import": "导入", + "import-sample-data": "导入示例数据", + "install": "安装", + "manage": "管理", + "more": "更多", + "no": "否", + "new-folder": "新建文件夹", + "new-license": "续订许可证", + "ok": "确定", + "paste": "粘贴", + "pick-selected": "选择所选", + "preview": "预览", + "open-browser": "在浏览器中打开", + "redo": "重做", + "refresh": "刷新", + "remove": "移除", + "reset": "重置", + "restart": "重启", + "save": "保存", + "send": "发送", + "select-all": "全选", + "set-to-default": "设为默认", + "start-export": "开始导出", + "settings": "设置", + "sign-out": "退出", + "undo": "撤销", + "uninstall": "卸载", + "unselect-all": "取消全选", + "update": "更新", + "upload": "上传", + "yes": "是", + "add-new-property": "添加新属性", + "manage-type-properties": "属性类型", + "manage-profile": "管理个人资料", + "minimize": "最小化", + "maximize": "最大化", + "stop-sending": "停止发送", + "set-active": "设为活动", + "reject-user": "拒绝用户", + "change-password": "更改密码", + "unlock-account": "解锁账户", + "lock-account": "锁定账户", + "today": "今天", + "time": "时间", + "now": "现在", + "date": "日期", + "see-details": "查看详情", + "dismiss": "忽略", + "hide-empty-property-values": "隐藏空值", + "show-empty-property-values": "显示空值", + "titles": { + "refresh": "刷新", + "new-folder": "新建文件夹", + "upload": "上传" + } + }, + "list": { + "no-data": "无数据", + "count": "计数", + "loading": "加载中...", + "item-not-found": "错误:未找到" + }, + "placeholders": { + "n-a": "不适用", + "no-file": "选择文件", + "search-keyword": "搜索关键词...", + "select-value": "选择值", + "select-values": "选择值" + }, + "dialogs": { + "delete": { + "title": "删除确认", + "message": "您确定要删除所选条目吗?" + } + }, + "properties": { + "short-text": { + "title": "短文本", + "description": "1024个字符以内的文本值" + }, + "long-text": { + "title": "长文本", + "description": "无大小限制的无限文本" + }, + "integer": { + "title": "整数", + "description": "整数" + }, + "decimal": { + "title": "小数", + "description": "精度为18,小数位数为4的小数" + }, + "date-time": { + "title": "日期时间", + "description": "选择日期" + }, + "boolean": { + "title": "布尔值", + "description": "开关类型" + }, + "html": { + "title": "HTML", + "description": "HTML标记" + }, + "undefined": { + "title": "未定义" + }, + "image": { + "title": "图片", + "description": "图片类型" + } + }, + "genericValueInput": { + "placeholders": { + "short-text": "输入短文本", + "secure-string": "输入密文", + "email": "输入电子邮件", + "url": "输入URL", + "long-text": "输入长文本", + "integer": "输入整数", + "number": "输入小数", + "date-time": "选择日期", + "short-text-multivalue": "添加值", + "integer-multivalue": "添加整数", + "number-multivalue": "添加小数", + "short-text-dictionary": "选择值", + "short-text-dictionary-multivalue": "选择值", + "short-text-multilang": "输入值", + "long-text-multilang": "输入值", + "short-text-multivalue-multilang": "添加值", + "short-text-dictionary-multilang": "选择值", + "short-text-dictionary-multivalue-multilang": "选择值", + "long-text-dictionary-multivalue-multilang": "选择值" + } + }, + "short-text-input": { + "placeholder": "输入值", + "required": "此字段为必填项", + "maxLength": "此字段不能超过{{number}}个字符" + }, + "validators": { + "uriWithoutQuery": { + "error": "URI格式无效。请确保URI没有查询参数" + } + }, + "errors": { + "generic-error": "错误", + "400": "错误请求", + "401": "未授权", + "403": "禁止访问", + "404": "未找到", + "405": "方法不允许", + "406": "不可接受", + "407": "需要代理认证", + "408": "请求超时", + "409": "冲突", + "429": "请求过多", + "500": "内部服务器错误", + "501": "未实现", + "502": "网关错误", + "503": "服务不可用", + "504": "网关超时" + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Countries.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Countries.json new file mode 100644 index 00000000000..90d586eebf8 --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Countries.json @@ -0,0 +1,270 @@ +{ + "platform": { + "countries": { + "AFG": "阿富汗", + "EGY": "埃及", + "ALA": "奥兰群岛", + "ALB": "阿尔巴尼亚", + "DZA": "阿尔及利亚", + "ASM": "美属萨摩亚", + "VIR": "美属维尔京群岛", + "AND": "安道尔", + "AGO": "安哥拉", + "AIA": "安圭拉", + "ATA": "南极洲(南极条约特殊地位)", + "ATG": "安提瓜和巴布达", + "GNQ": "赤道几内亚", + "ARG": "阿根廷", + "ARM": "亚美尼亚", + "ABW": "阿鲁巴", + "AZE": "阿塞拜疆", + "ETH": "埃塞俄比亚", + "AUS": "澳大利亚", + "BHS": "巴哈马", + "BHR": "巴林", + "BGD": "孟加拉国", + "BRB": "巴巴多斯", + "BLR": "白俄罗斯", + "BEL": "比利时", + "BLZ": "伯利兹", + "BEN": "贝宁", + "BMU": "百慕大", + "BTN": "不丹", + "BOL": "玻利维亚", + "BES": "博内尔、圣尤斯特歇斯和萨巴", + "BIH": "波斯尼亚和黑塞哥维那", + "BWA": "博茨瓦纳", + "BVT": "布韦岛", + "BRA": "巴西", + "VGB": "英属维尔京群岛", + "IOT": "英属印度洋领地", + "BRN": "文莱", + "BGR": "保加利亚", + "BFA": "布基纳法索", + "BDI": "布隆迪", + "CHL": "智利", + "CHN": "中华人民共和国", + "COK": "库克群岛", + "CRI": "哥斯达黎加", + "CUW": "库拉索", + "DNK": "丹麦", + "DEU": "德国", + "DMA": "多米尼克", + "DOM": "多米尼加共和国", + "DJI": "吉布提", + "ECU": "厄瓜多尔", + "CIV": "科特迪瓦", + "SLV": "萨尔瓦多", + "ERI": "厄立特里亚", + "EST": "爱沙尼亚", + "SWZ": "斯威士兰", + "FLK": "福克兰群岛", + "FRO": "法罗群岛", + "FJI": "斐济", + "FIN": "芬兰", + "FRA": "法国", + "GUF": "法属圭亚那", + "PYF": "法属波利尼西亚", + "ATF": "法属南部和南极领地", + "GAB": "加蓬", + "GMB": "冈比亚", + "GEO": "格鲁吉亚", + "GHA": "加纳", + "GIB": "直布罗陀", + "GRD": "格林纳达", + "GRC": "希腊", + "GRL": "格陵兰", + "GLP": "瓜德罗普", + "GUM": "关岛", + "GTM": "危地马拉", + "GGY": "根西岛", + "GIN": "几内亚", + "GNB": "几内亚比绍", + "GUY": "圭亚那", + "HTI": "海地", + "HMD": "赫德岛和麦克唐纳群岛", + "HND": "洪都拉斯", + "HKG": "香港", + "IND": "印度", + "IDN": "印度尼西亚", + "IMN": "马恩岛", + "IRQ": "伊拉克", + "IRN": "伊朗", + "IRL": "爱尔兰", + "ISL": "冰岛", + "ISR": "以色列", + "ITA": "意大利", + "JAM": "牙买加", + "JPN": "日本", + "YEM": "也门", + "JEY": "泽西岛", + "JOR": "约旦", + "CYM": "开曼群岛", + "KHM": "柬埔寨", + "CMR": "喀麦隆", + "CAN": "加拿大", + "CPV": "佛得角", + "KAZ": "哈萨克斯坦", + "QAT": "卡塔尔", + "KEN": "肯尼亚", + "KGZ": "吉尔吉斯斯坦", + "KIR": "基里巴斯", + "CCK": "科科斯(基林)群岛", + "COL": "哥伦比亚", + "COM": "科摩罗", + "COD": "刚果民主共和国", + "COG": "刚果共和国", + "PRK": "朝鲜", + "KOR": "韩国", + "HRV": "克罗地亚", + "CUB": "古巴", + "KWT": "科威特", + "LAO": "老挝", + "LSO": "莱索托", + "LVA": "拉脱维亚", + "LBN": "黎巴嫩", + "LBR": "利比里亚", + "LBY": "利比亚", + "LIE": "列支敦士登", + "LTU": "立陶宛", + "LUX": "卢森堡", + "MAC": "澳门", + "MDG": "马达加斯加", + "MWI": "马拉维", + "MYS": "马来西亚", + "MDV": "马尔代夫", + "MLI": "马里", + "MLT": "马耳他", + "MAR": "摩洛哥", + "MHL": "马绍尔群岛", + "MTQ": "马提尼克", + "MRT": "毛里塔尼亚", + "MUS": "毛里求斯", + "MYT": "马约特", + "MEX": "墨西哥", + "FSM": "密克罗尼西亚", + "MDA": "摩尔多瓦", + "MCO": "摩纳哥", + "MNG": "蒙古", + "MNE": "黑山", + "MSR": "蒙特塞拉特", + "MOZ": "莫桑比克", + "MMR": "缅甸", + "NAM": "纳米比亚", + "NRU": "瑙鲁", + "NPL": "尼泊尔", + "NCL": "新喀里多尼亚", + "NZL": "新西兰", + "NIC": "尼加拉瓜", + "NLD": "荷兰", + "NER": "尼日尔", + "NGA": "尼日利亚", + "NIU": "纽埃", + "MNP": "北马里亚纳群岛", + "MKD": "北马其顿", + "NFK": "诺福克岛", + "NOR": "挪威", + "OMN": "阿曼", + "AUT": "奥地利", + "TLS": "东帝汶", + "PAK": "巴基斯坦", + "PSE": "巴勒斯坦", + "PLW": "帕劳", + "PAN": "巴拿马", + "PNG": "巴布亚新几内亚", + "PRY": "巴拉圭", + "PER": "秘鲁", + "PHL": "菲律宾", + "PCN": "皮特凯恩群岛", + "POL": "波兰", + "PRT": "葡萄牙", + "PRI": "波多黎各", + "REU": "留尼汪", + "RWA": "卢旺达", + "ROU": "罗马尼亚", + "RUS": "俄罗斯", + "SLB": "所罗门群岛", + "BLM": "圣巴泰勒米", + "MAF": "法属圣马丁", + "ZMB": "赞比亚", + "WSM": "萨摩亚", + "SMR": "圣马力诺", + "STP": "圣多美和普林西比", + "SAU": "沙特阿拉伯", + "SWE": "瑞典", + "CHE": "瑞士", + "SEN": "塞内加尔", + "SRB": "塞尔维亚", + "SYC": "塞舌尔", + "SLE": "塞拉利昂", + "ZWE": "津巴布韦", + "SGP": "新加坡", + "SXM": "荷属圣马丁", + "SVK": "斯洛伐克", + "SVN": "斯洛文尼亚", + "SOM": "索马里", + "ESP": "西班牙", + "LKA": "斯里兰卡", + "SHN": "圣赫勒拿、阿森松和特里斯坦-达库尼亚", + "KNA": "圣基茨和尼维斯", + "LCA": "圣卢西亚", + "SPM": "圣皮埃尔和密克隆", + "VCT": "圣文森特和格林纳丁斯", + "ZAF": "南非", + "SDN": "苏丹", + "SGS": "南乔治亚和南桑威奇群岛", + "SSD": "南苏丹", + "SUR": "苏里南", + "SJM": "斯瓦尔巴和扬马延", + "SYR": "叙利亚", + "TJK": "塔吉克斯坦", + "TWN": "台湾", + "TZA": "坦桑尼亚", + "THA": "泰国", + "TGO": "多哥", + "TKL": "托克劳", + "TON": "汤加", + "TTO": "特立尼达和多巴哥", + "TCD": "乍得", + "CZE": "捷克共和国", + "TUN": "突尼斯", + "TUR": "土耳其", + "TKM": "土库曼斯坦", + "TCA": "特克斯和凯科斯群岛", + "TUV": "图瓦卢", + "UGA": "乌干达", + "UKR": "乌克兰", + "HUN": "匈牙利", + "UMI": "美国本土外小岛屿", + "URY": "乌拉圭", + "UZB": "乌兹别克斯坦", + "VUT": "瓦努阿图", + "VAT": "梵蒂冈城", + "VEN": "委内瑞拉", + "ARE": "阿拉伯联合酋长国", + "USA": "美利坚合众国", + "GBR": "英国", + "VNM": "越南", + "WLF": "瓦利斯和富图纳", + "CXR": "圣诞岛", + "ESH": "西撒哈拉", + "CAF": "中非共和国", + "CYP": "塞浦路斯" + }, + "CAN": { + "AB": "艾伯塔省", + "BC": "不列颠哥伦比亚省", + "MB": "马尼托巴省", + "NB": "新不伦瑞克省", + "NL": "纽芬兰和拉布拉多省", + "NT": "西北地区", + "NS": "新斯科舍省", + "NU": "努纳武特地区", + "ON": "安大略省", + "PE": "爱德华王子岛省", + "QC": "魁北克省", + "SK": "萨斯喀彻温省", + "YT": "育空地区" + } + } +} \ No newline at end of file diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Platform.json b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Platform.json new file mode 100644 index 00000000000..9c71951e0ef --- /dev/null +++ b/src/VirtoCommerce.Platform.Web/wwwroot/Localizations/zh.VirtoCommerce.Platform.json @@ -0,0 +1,1044 @@ +{ + "platform": { + "menu": { + "home": "首页", + "browse": "浏览", + "configuration": "配置", + "notifications": "通知", + "more": "更多", + "settings": "设置", + "dynamic-properties": "动态属性", + "security": "安全", + "modules": "模块", + "export-import": "导出 & 导入", + "user-profile": "用户资料", + "assets": "资源", + "toggle-favorites": "按 Shift + 空格键切换收藏夹", + "help": "帮助" + }, + "navigation": { + "back": "返回" + }, + "blades": { + "system-info": { + "title": "平台信息", + "labels": { + "clr-version": "CLR 版本", + "environment-name": "环境模式", + "is-64-bit-os": "64位操作系统", + "is-64-bit-process": "64位进程", + "database-provider": "数据库提供商" + } + }, + "asset-list": { + "title": "资源管理", + "bread-crumb-top": "所有资源", + "labels": { + "picture": "图片", + "name": "名称", + "size": "大小", + "modified": "修改时间", + "actions": "操作", + "group": "组", + "language": "语言" + } + }, + "asset-upload": { + "title": "资源上传", + "labels": { + "select-files": "选择文件", + "drag-note": "拖放文件到此处", + "progress": "进度", + "asset-uploaded": "资源已上传" + }, + "placeholders": { + "image-url": "在此粘贴文件URL" + } + }, + "operation-list": { + "labels": { + "login": "登录", + "details": "详情", + "time": "时间" + } + }, + "dynamicObject-list": { + "title": "动态对象类型", + "subtitle": "选择对象类型以管理动态属性", + "labels": { + "no-objects": "目前还没有支持动态属性的对象" + } + }, + "dynamicProperty-detail": { + "title": "管理属性", + "subtitle": "管理属性", + "subtitle-new": "新属性", + "labels": { + "property-name": "属性名称", + "required": "必填", + "multivalue": "多值", + "multilingual": "多语言", + "dictionary": "字典", + "description": "描述", + "display-order": "显示顺序", + "display-name": "显示名称", + "value-type": "值类型", + "dictionary-values": "字典值", + "manage-dictionary": "管理字典" + }, + "placeholders": { + "description": "输入属性描述", + "display-name": "输入显示名称...", + "display-order": "显示顺序" + }, + "validations": { + "multivalue": "多值属性只能有短文本、整数或小数值类型", + "multilingual": "只有文本或HTML值可以是多语言的", + "dictionary": "只支持短文本值类型的字典" + } + }, + "dynamicProperty-list": { + "subtitle": "管理动态属性", + "labels": { + "no-properties": "目前还没有动态属性" + } + }, + "notifications-menu": { + "subtitle": "使用通知系统" + }, + "property-dictionary": { + "title": "字典值", + "subtitle": "管理字典值", + "labels": { + "edit-value": "编辑值", + "new-value": "新值", + "dictionary-name": "字典条目名称", + "localized-values": "本地化值", + "current-values": "当前值", + "name": "名称", + "values": "值" + }, + "validations": { + "dictionary-name-required": "必填", + "dictionary-name": "发现重复名称", + "localized-values-required": "必填", + "localized-values": "发现重复名称", + "dictionary": "只支持短文本值类型的字典" + }, + "placeholders": { + "dictionary-name": "输入名称", + "localized-values": "输入值" + } + }, + "propertyValue-list": { + "title": "动态属性", + "subtitle": "", + "labels": { + "header": "属性值", + "no-properties": "此实体还没有任何动态属性。点击'属性类型'并创建一些属性。关闭并重新打开当前实体视图以加载动态属性" + } + }, + "edit-array": { + "validations": { + "new-value-required": "必填" + }, + "labels": { + "new-value": "新值", + "current-values": "当前值", + "values": "值" + }, + "placeholders": { + "value": "输入值" + } + }, + "export-main": { + "title": "数据导出", + "labels": { + "platform-entries": "平台条目", + "choose-modules": "选择要导出的模块", + "download-url": "下载URL", + "errors": "错误", + "start": "开始", + "end": "结束" + }, + "menu": { + "security": { + "title": "安全", + "description": "账户和角色" + }, + "binary": { + "title": "二进制", + "description": "二进制数据" + }, + "settings": { + "title": "设置", + "description": "平台设置" + }, + "dynamic-props": { + "title": "动态属性", + "description": "平台动态属性" + } + } + }, + "import-main": { + "title": "数据导入", + "labels": { + "start-import": "开始导入", + "select-file": "选择要导入的.zip文件。该文件必须由Commerce Manager数据导出生成", + "drag-note": "拖放要导入的.zip文件。该文件必须由Commerce Manager数据导出生成", + "upload-failed": "上传失败", + "upload-progress": "上传进度", + "import-progress": "导入进度", + "import-finished": "导入完成", + "import-data-information": "导入数据信息", + "author": "作者", + "data-file-created": "数据文件创建时间", + "created-platform-version": "创建于平台版本", + "platform-entries": "平台条目", + "choose-modules": "选择要导入的模块", + "no-data": "无数据", + "errors": "错误", + "start": "开始", + "end": "结束" + }, + "menu": { + "security": { + "title": "安全", + "description": "账户和角色" + }, + "binary": { + "title": "二进制", + "description": "二进制数据" + }, + "settings": { + "title": "设置", + "description": "平台设置" + }, + "dynamic-props": { + "title": "动态属性", + "description": "平台动态属性" + } + } + }, + "exportImport-main": { + "title": "数据导出和导入", + "menu": { + "export": { + "title": "导出", + "description": "数据将被保存到文件中,以便稍后导入" + }, + "import": { + "title": "导入", + "description": "从导出的文件中导入数据" + } + } + }, + "resolve-result": { + "title": "预览结果", + "labels": { + "subject": "主题", + "body": "正文" + } + }, + "module-settings-detail": { + "title": "模块设置" + }, + "module-wizard-progress-step": { + "title-install": "模块安装", + "title-update": "模块更新", + "title-uninstall": "模块卸载", + "labels": { + "start": "开始", + "end": "结束", + "progress-messages": "进度消息", + "process-completed": "模块安装过程已完成", + "restart-application": "立即重启应用程序或稍后重启" + } + }, + "module-detail": { + "title": "模块信息", + "labels": { + "i-accept-the": "我接受", + "license-link": "许可", + "license": "许可", + "agreement": "协议", + "install-from-file": "从文件安装/更新模块", + "select-module-file": "从中央模块存储库外部上传模块(.zip)文件", + "upload-progress": "上传进度", + "module-info": "模块信息", + "title": "标题", + "official": "{{$owner}}的官方模块", + "owners": "由{{$owner}}开发", + "author": "作者", + "authors": "作者", + "id": "ID", + "version": "版本", + "project-information": "项目信息", + "description": "描述", + "platform-version": "平台版本", + "dependencies": "依赖项", + "optional-dependencies": "可选依赖项", + "tags": "标签", + "install-version": "安装版本", + "errors": "错误" + } + }, + "modules-main": { + "title": "模块", + "labels": { + "updates": "更新", + "available": "可用", + "installed": "已安装", + "withErrors": "错误", + "advanced": "高级" + } + }, + "modules-list": { + "subtitle": "模块管理", + "labels": { + "grouping": "显示模块包", + "ungrouped": "其他", + "no-updates": "未找到更新", + "no-modules-part1": "没有新模块可安装", + "no-installed-modules": "未找到已安装的模块", + "icon": "图标", + "up-to-date": "模块已是最新", + "update-available": "此模块有可用更新", + "module": "模块", + "version": "版本", + "author": "作者", + "installed": "已安装的模块", + "manual-install-warning": "警告!手动安装的模块将不会启动,因为 RefreshProbingFolderOnStart 设置为 false" + } + }, + "history": { + "title": "系统事件", + "subtitle": "事件历史", + "labels": { + "type": "类型", + "title": "标题", + "created": "创建时间", + "description": "描述" + } + }, + "historyDetailDefault": { + "title": "事件详情", + "subtitle": "事件详情", + "labels": { + "start": "开始", + "end": "结束", + "elapsed": "耗时", + "errors": "错误", + "stats": "已处理 {{ totalCount }} 条记录中的 {{ processedCount }} 条" + } + }, + "menuHeader": { + "labels": { + "history": "历史", + "clear-recent": "清除所有最近记录" + } + }, + "account-changePassword": { + "labels": { + "title": "请输入新密码", + "login": "登录", + "force-change-info": "您的密码已过期。您必须更改密码才能继续使用管理器", + "current-password": "当前密码", + "new-password": "新密码", + "repeat-password": "重复新密码", + "cancel": "取消", + "save": "更改", + "fail": "抱歉,我们无法为此用户重置密码" + }, + "validations": { + "current-password": "必填", + "new-password": "新旧密码相同!", + "repeat-password": "新密码不匹配!" + }, + "placeholders": { + "current-password": "输入当前密码", + "new-password": "输入新密码", + "repeat-password": "重复新密码" + } + }, + "account-resetPassword": { + "subtitle": "更改用户密码", + "labels": { + "new-password": "新密码", + "repeat-password": "重复密码", + "force-password-change": "让此用户在下次登录时更改密码" + }, + "validations": { + "repeat-password": "新密码不匹配!", + "invalid-token": "重置密码令牌无效或已过期", + "password-too-weak": "新密码不符合一个或多个密码安全策略:", + "passwordTooShort": "密码必须至少包含 {{parameter}} 个字符", + "passwordRequiresUniqueChars": "密码必须使用至少 {{parameter}} 个不同的字符", + "passwordRequiresLower": "密码必须包含至少一个小写字母('a'-'z')", + "passwordRequiresUpper": "密码必须包含至少一个大写字母('A'-'Z')", + "passwordRequiresDigit": "密码必须包含至少一个数字('0'-'9')", + "passwordRequiresNonAlphanumeric": "密码必须包含至少一个非字母数字字符", + "recentPasswordUsed": "您过去使用过这个密码。请选择另一个" + }, + "placeholders": { + "new-password": "输入新密码", + "repeat-password": "重复新密码" + } + }, + "account-detail": { + "title-new": "新账户", + "labels": { + "user-information": "用户信息", + "is-administrator": "是管理员", + "account-type": "账户类型", + "login": "登录名", + "account-state": "账户状态", + "account-email": "电子邮件", + "locked-state": "锁定状态", + "status": "状态", + "verified": "已验证", + "resend-link": "重新发送链接", + "link-sent": "链接已发送", + "last-login-date": "最后登录日期" + }, + "placeholders": { + "account-type": "选择...", + "email": "输入电子邮件", + "user-name": "输入用户名", + "status": "选择..." + } + }, + "account-list": { + "title": "用户", + "subtitle": "安全服务", + "labels": { + "name": "姓名", + "account-type": "账户类型", + "login": "登录名", + "state": "状态", + "status": "状态" + } + }, + "account-api": { + "labels": { + "api-key": "API 密钥", + "is-active": "是否激活" + }, + "placeholders": { + "api-key": "输入 API 密钥" + } + }, + "role-detail": { + "subtitle": "角色详情", + "labels": { + "summary": "摘要", + "name": "名称", + "description": "描述", + "assigned-permissions": "已分配权限", + "permission-name": "名称", + "assigned-scopes": "已分配范围", + "no-permissions-assigned": "未分配权限" + }, + "placeholders": { + "name": "输入名称", + "description": "输入描述" + } + }, + "account-roles": { + "subtitle": "分配角色", + "labels": { + "select-roles": "选择要分配的角色", + "no-roles": "没有可分配的角色" + } + }, + "account-roles-list": { + "title": "", + "labels": { + "assigned-roles": "已分配的角色", + "no-assigned": "未分配角色" + } + }, + "permission-scopes": { + "subtitle": "配置权限范围", + "labels": { + "select-bounded-scopes": "选择绑定的范围", + "selected": "已选择", + "scope-name": "范围名称和参数", + "no-scopes": "没有范围" + } + }, + "role-permissions": { + "subtitle": "分配权限", + "labels": { + "select-permissions": "选择要分配的权限" + } + }, + "new-role-wizard": { + "title": "新角色", + "labels": { + "summary": "摘要", + "name": "名称", + "description": "描述", + "assign-permissions": "分配权限" + }, + "placeholders": { + "name": "输入名称", + "description": "输入描述" + } + }, + "role-list": { + "title": "角色", + "subtitle": "安全服务", + "labels": { + "name": "名称" + } + }, + "oauthapps": { + "labels": { + "clientId": "客户端 ID", + "displayName": "显示名称", + "type": "类型", + "clientSecret": "客户端密钥", + "assigned-permissions": "已分配权限", + "redirectUris": "重定向 URI", + "postLogoutRedirectUris": "登出后重定向 URI" + }, + "placeholders": { + "clientId": "输入客户端 ID", + "displayName": "输入显示名称", + "type": "输入类型", + "clientSecret": "输入客户端密钥" + } + }, + "oauthapps-list": { + "title": "OAuth 应用", + "subtitle": "安全服务" + }, + "oauthapps-detail": { + "title": "编辑 OAuth 应用", + "title-new": "创建 OAuth 应用", + "subtitle": "安全服务", + "labels": { + "clientSecret-warning": "警告!您必须立即复制密钥。关闭此页面后将无法再次查看", + "urls": "URL" + }, + "blades": { + "edit-redirectUris": { + "title": "重定向 URI", + "subtitle": "管理重定向 URI" + }, + "edit-postLogoutRedirectUris": { + "title": "登出后重定向 URI", + "subtitle": "管理登出后重定向 URI" + } + } + }, + "login": { + "labels": { + "sign-in": "登录到 {{title}} 管理器", + "login": "登录", + "password": "密码", + "remember-me": "记住我", + "external-sign-in": "使用 {{displayName}} 登录", + "forgot-password": "忘记密码?", + "log-in": "登录", + "log-in-placeholder": "输入您的邮箱或用户名", + "password-placeholder": "输入您的密码", + "azure-log-in-label": "通过 Azure 登录管理站点", + "password-log-in-type": "系统用户", + "or": "或", + "signing-in": "正在登录..." + } + }, + "forgotpassword": { + "title": "忘记密码?", + "labels": { + "login": "登录名或邮箱", + "description": "我们将向您发送一封包含重置密码说明的电子邮件", + "success": "包含说明的电子邮件已发送给您", + "fail": "抱歉,我们无法为该用户重置密码", + "back": "返回", + "submit": "提交", + "time-limit": "您可以在 {{countdown}} 后再次尝试", + "time-limit-end": "您现在可以再次尝试" + }, + "placeholders": { + "login-or-email": "输入登录名或邮箱" + } + }, + "access-denied": { + "title": "访问被拒绝", + "labels": { + "message": "您没有访问此资源的权限。请联系您的管理员", + "button": "使用其他凭据登录" + } + }, + "resetpassword": { + "title": "密码重置", + "labels": { + "success": "您的密码已重置", + "fail": "抱歉,我们无法为该用户重置密码", + "submit": "重置", + "log-in": "登录" + } + }, + "license": { + "title": "当前许可证", + "title-new": "新许可证激活", + "license-info": "许可证信息", + "license-activation": "许可证激活", + "labels": { + "info-running-no-license": "此 Virto Commerce 实例正在运行", + "info-open-source-license": "开源社区许可证", + "info0": "获取或续订许可证:", + "info1": "提交", + "info2": "我们将处理您的请求并尽快与您联系", + "info3": "一旦您收到\"激活码\"和/或许可证文件,请填写下面的一个激活字段", + "info4": "系统将显示新的许可证信息。请检查并点击\"激活\"确认", + "customer": "许可证发给", + "type": "类型", + "expiration": "过期时间", + "email": "客户邮箱", + "request-license": "许可证申请表", + "code-descr": "输入收到的许可证\"激活码\"并按 [Enter]。这是最快的许可证激活方法。(需要互联网连接)", + "file-descr": "或者,提供收到的许可证文件。(离线激活)", + "upload-progress": "上传进度", + "errors": "激活错误" + }, + "placeholders": { + "code": "输入激活码" + } + }, + "new-account-wizard": { + "labels": { + "login": "登录名", + "email": "邮箱", + "password": "密码", + "repeat-password": "重复密码", + "assign-roles": "分配角色" + }, + "placeholders": { + "email": "输入邮箱", + "login": "输入登录名", + "password": "输入新密码", + "repeat-password": "重复新密码" + }, + "validations": { + "repeat-password": "输入的密码不匹配!", + "password-too-weak": "输入的密码不符合一个或多个密码安全策略:" + } + }, + "security-main": { + "title": "安全", + "subtitle": "用户管理" + }, + "entitySetting-list": { + "title": "设置" + }, + "setting-dictionary": { + "subtitle": "管理字典值", + "labels": { + "new-value": "请输入值", + "current-values": "当前值", + "value": "值" + }, + "validations": { + "new-value-required": "必填", + "new-value": "发现重复值" + }, + "placeholders": { + "new-value": "请输入值" + } + }, + "settings-detail": { + "title": "设置值", + "hide-description": "隐藏" + }, + "settingGroup-list": { + "title": "设置", + "bread-crumb-top": "所有设置" + }, + "settings-uploader": { + "drag-drop-comment": "将文件拖放到此处", + "or": "或", + "browse-your-files": "浏览您的文件" + }, + "localizable-setting-value-list": { + "subtitle": "管理字典值" + }, + "localizable-setting-value-details": { + "title": "编辑字典值", + "alias": "系统值" + }, + "user-profile": { + "title": "用户资料", + "labels": { + "language": "语言", + "language-description": "显示语言。清除以使用浏览器或备用语言", + "regional-format": "区域格式", + "regional-format-description": "数字、货币、日期和时间的区域格式。清除以使用浏览器或备用区域格式", + "time-zone": "时区", + "time-zone-description": "当前用户时区(IANA tz 数据库格式)。选择您时区内最近的城市。清除以使用浏览器或备用时区", + "use-time-ago": "尽可能使用\"多久以前\"格式", + "full-date-threshold-group": "对早于以下时间的日期使用完整日期格式...", + "full-date-threshold-description": "时间单位的数值", + "full-date-threshold-unit-description": "时间单位(如小时或年)" + }, + "placeholders": { + "full-date-threshold": "输入阈值", + "full-date-threshold-unit": "选择阈值单位" + }, + "full-date-threshold-units": { + "Never": "从不", + "Seconds": "秒", + "Minutes": "分钟", + "Hours": "小时", + "Days": "天", + "Weeks": "周", + "Months": "月", + "Quarters": "季度", + "Years": "年" + } + } + }, + "templates": { + "sampleDataChoose": { + "labels": { + "choose-sample-data-type": "选择示例数据类型", + "size": "大小", + "version": "版本" + } + }, + "sampleDataInitialization": { + "labels": { + "sample-data-initialization": "示例数据初始化", + "starting-initialization": "正在开始示例数据初始化...", + "errors": "错误", + "start": "开始", + "end": "结束" + } + }, + "licensing": { + "license-absent": "社区许可证", + "license-present": "{{type}} 许可证,过期时间 {{expirationDate | amParse | date}}", + "community": "正在运行社区版,点击申请商业许可证", + "expired": "您的许可证已于 {{expirationDate | amParse | date}} 过期,请续订", + "purchase": "购买", + "renew": "续订", + "expiration-date": "过期日期" + }, + "password-expiry": { + "expire-days": "为保护您的账户,您需要在 {{count}} 天内更改密码。", + "expire-today": "为保护您的账户,您需要今天更改密码。", + "change-link": "立即更改" + }, + "modulesAutoInstallation": { + "labels": { + "module-auto-installation": "模块自动安装", + "loading": "正在获取模块信息...", + "finished": "安装完成。点击重启以继续", + "start": "开始", + "end": "结束" + } + } + }, + "widgets": { + "operations": { + "title": "更改", + "blade-subtitle": "更改历史" + }, + "dynamicProperty": { + "title": "动态属性" + }, + "entitySettings": { + "title": "设置" + }, + "accountApi": { + "title": "API 密钥", + "blade-subtitle": "API 密钥" + }, + "accountRoles": { + "title": "角色", + "blade-subtitle": "管理角色" + } + }, + "dialogs": { + "folders-delete": { + "title": "删除确认", + "message": "您确定要删除选定的文件夹或文件吗?" + }, + "properties-save": { + "title": "保存更改", + "message": "属性已被修改。您想保存更改吗?" + }, + "notification-template-save": { + "title": "保存更改", + "message": "通知模板已被修改。您想保存更改吗?" + }, + "role-save": { + "title": "保存更改", + "message": "角色已被修改。您想保存更改吗?" + }, + "roles-delete": { + "title": "删除确认", + "message": "您确定要删除选定的角色吗?" + }, + "account-save": { + "title": "保存更改", + "message": "账户已被修改。您想保存更改吗?" + }, + "account-delete": { + "title": "删除确认", + "message": "您确定要删除选定的账户吗?" + }, + "oauthapps-save": { + "title": "保存更改", + "message": "OAuth 应用已被修改。您想保存更改吗?" + }, + "oauthapps-delete": { + "title": "删除确认", + "message": "您确定要删除选定的 OAuth 应用吗?" + }, + "dynamic-property-delete": { + "title": "删除确认", + "message": "您确定要删除此动态属性吗?" + }, + "settings-value-delete": { + "title": "删除确认", + "message": "您确定要删除选定的值吗?" + }, + "settings-save": { + "title": "保存更改", + "message": "设置已被修改。您想保存更改吗?" + }, + "settings-delete": { + "title": "删除确认", + "message": "设置已被修改。您想保存更改吗?" + }, + "localizable-setting-value-delete": { + "title": "删除确认", + "message": "您确定要删除选定的字典值吗?" + }, + "localizable-setting-value-save": { + "title": "保存更改", + "message": "此字典值已被修改。您想保存更改吗?" + }, + "email-sending-success": { + "title": "发送成功", + "message": "邮件已成功发送!" + }, + "email-send-error": { + "title": "发送错误", + "message": "邮件未能发送!错误:{{error}}" + }, + "dictionary-items-delete": { + "title": "删除确认", + "message": "您确定要删除选定的 {{quantity}} 个字典项吗?" + }, + "module-action": { + "title-install": "安装确认", + "title-update": "更新确认", + "title-delete": "卸载确认", + "message0-install": "您即将安装:", + "message0-update": "您即将更新:", + "message0-delete": "您即将卸载:", + "message1-install": "以下依赖项也将被安装:", + "message1-delete": "以下依赖模块也将被卸载:", + "message2-install": "安装选定项和依赖项?", + "message2-update": "更新选定项和依赖项?", + "message2-delete": "卸载此模块和所有依赖模块?" + }, + "module-delete": { + "title": "删除确认", + "message": "您确定要卸载此模块吗?" + }, + "api-key-delete": { + "title": "删除确认", + "message": "您确定要删除此 API 密钥吗?" + }, + "app-restart": { + "title": "应用程序关闭", + "message": "重启应用程序以应用更改。根据您的托管服务,应用程序可能会自动重启,或者您可能需要手动重启。您确定要现在关闭应用程序吗?" + }, + "error-details": { + "title": "错误详情" + }, + "impersonate-no-url": { + "title": "代表登录", + "message": "商店 URL 未添加到商店设置中。请联系管理员" + }, + "asset-upload-error": { + "title": "上传错误", + "message": "请选择一个文件夹!无法上传文件到根目录!" + }, + "run-import": { + "title": "导入确认", + "message": "您确定要导入示例数据吗?" + }, + "create-folder": { + "title": "文件夹名称必须符合以下命名规则:\n 文件夹名称长度必须在 3 到 63 个字符之间。\n 文件夹名称必须以字母或数字开头,只能包含字母、数字和连字符(-)。\n 每个连字符(-)的前后必须紧跟字母或数字;不允许连续的连字符。\n 文件夹名称中的所有字母必须是小写" + }, + "storefront-cache-reset-successfully": { + "title": "缓存重置", + "message": "前端应用程序缓存已成功重置" + } + }, + "commands": { + "login-on-behalf": "代表登录", + "reset-storefront-cache": "重置缓存" + } + }, + "permissions": { + "platform:asset:access": "在主菜单中查看资产", + "platform:asset:delete": "删除平台资产", + "platform:asset:update": "更改平台资产", + "platform:asset:create": "上传新的平台资产", + "platform:asset:read": "下载平台资产", + "platform:module:read": "查看模块详情", + "platform:module:access": "在主菜单中查看模块", + "platform:module:manage": "安装/卸载模块", + "platform:setting:read": "读取平台设置", + "platform:setting:access": "在主菜单中查看设置", + "platform:setting:update": "更改平台设置", + "platform:dynamic_properties:read": "查看动态属性详情", + "platform:dynamic_properties:create": "创建新的动态属性", + "platform:dynamic_properties:access": "在主菜单中查看动态属性", + "platform:dynamic_properties:update": "更改动态属性", + "platform:dynamic_properties:delete": "删除动态属性", + "platform:security:read": "查看用户和角色详情", + "platform:security:create": "创建新用户和角色", + "platform:security:access": "在主菜单中查看安全设置", + "platform:security:update": "更改用户和角色", + "platform:security:delete": "删除用户和角色", + "platform:security:verifyEmail": "更改验证状态并发送验证邮件", + "background_jobs:manage": "访问 Hangfire 控制台", + "platform:exportImport:access": "在主菜单中查看导出/导入", + "platform:import": "导入平台和模块数据", + "platform:export": "导出平台和模块数据", + "platform:security:loginOnBehalf": "代表客户登录" + }, + "settings": { + "VirtoCommerce": { + "Core": { + "General": { + "Languages": { + "title": "语言", + "description": "可用语言列表" + } + } + }, + "ModulesAutoInstalled": { + "description": "该标志表示模块是自动安装的", + "title": "已安装模块" + }, + "ModulesAutoInstallState": { + "title": "模块自动安装状态", + "description": "自动安装模块向导的当前状态" + }, + "SetupStep": { + "title": "当前设置步骤", + "description": "设置向导中的当前步骤" + }, + "SampleDataState": { + "title": "示例数据状态", + "description": "示例数据向导的当前状态" + }, + "SendDiagnosticData": { + "title": "发送诊断数据", + "description": "向 VC 发送 VC 平台诊断数据。只能通过购买许可证来禁用" + }, + "Platform": { + "Security": { + "AccountTypes": { + "description": "可能的账户类型字典", + "title": "账户类型" + }, + "DefaultAccountType": { + "title": "默认账户类型", + "description": "创建新账户时的默认账户类型值" + }, + "DefaultAccountStatus": { + "title": "默认账户状态", + "description": "创建新账户时的默认账户状态值" + }, + "DefaultExternalAccountStatus": { + "title": "默认外部账户状态", + "description": "外部登录时创建新账户的默认账户状态值" + }, + "EnablePruneExpiredTokensJob": { + "description": "启用清理过期和无效令牌/授权的功能", + "title": "清理过期令牌" + }, + "CronPruneExpiredTokensJob": { + "description": "清理过期和无效令牌/授权的作业的 Cron 表达式", + "title": "令牌清理作业的 Cron" + }, + "FileExtensionsBlackList": { + "description": "平台禁止上传的文件扩展名(除了 appsettings.json 中的 'FileExtensionsBlackList')", + "title": "黑名单" + }, + "FileExtensionsWhiteList": { + "description": "平台允许上传的文件扩展名(除了 appsettings.json 中的 'FileExtensionsWhiteList')", + "title": "白名单" + } + }, + "UI": { + "MainMenu": { + "State": { + "description": "主菜单的持久化状态", + "title": "主菜单的持久化状态" + } + }, + "Language": { + "description": "默认语言(ISO 639-1 的两字母代码,不区分大小写)。例如:en, de", + "title": "语言" + }, + "RegionalFormat": { + "description": "默认区域格式(CLDR 区域代码,使用破折号或下划线作为分隔符,不区分大小写)。例如:en, en_US, sr_Cyrl, sr_Cyrl_RS", + "title": "区域格式" + }, + "TimeZone": { + "description": "默认时区(IANA 时区名称 [tz 数据库],与数据库中完全一致,区分大小写)。例如:America/New_York, Europe/Moscow", + "title": "时区" + }, + "UseTimeAgo": { + "description": "当设置为 true(默认值)时,系统会在可能的情况下以\"几秒钟前\"的格式显示日期", + "title": "尽可能使用\"多久以前\"格式" + }, + "FullDateThreshold": { + "description": "\"多久以前\"格式将在特定时间单位数后切换为完整日期格式", + "title": "完整日期阈值" + }, + "FullDateThresholdUnit": { + "description": "完整日期阈值的单位", + "title": "完整日期阈值单位" + }, + "Customization": { + "description": "JSON 包含管理界面的个性化设置", + "title": "管理界面自定义" + }, + "ShowMeridian": { + "description": "显示时间午线指示器(上午或下午)", + "title": "显示时间午线" + } + }, + "Cache": { + "Enabled": { + "description": "此设置允许您全局启用和禁用整个平台应用程序的缓存", + "title": "全局启用或禁用缓存" + }, + "AbsoulteExpiration": { + "description": "指定缓存数据在缓存中存储的最长时间。格式:[-][d.]hh:mm:ss[.fffffff]", + "title": "缓存中对象的全局生命周期" + } + } + }, + "Other": { + "AccountStatuses": { + "title": "账户状态", + "description": "更改账户状态" + } + } + } + } +} diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.js b/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.js index 79dafa847fe..edcd7e9021c 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.js +++ b/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.js @@ -4,7 +4,7 @@ angular.module('platformWebApp') function initializeBlade() { if (blade.currentEntity.isInstalled) { - var canUpdate = _.any(moduleHelper.allmodules, function (x) { + var canUpdate = $scope.allowInstallModules && _.any(moduleHelper.allmodules, function (x) { return x.id === blade.currentEntity.id && !x.isInstalled; }); @@ -23,7 +23,7 @@ angular.module('platformWebApp') executeMethod: function () { $scope.confirmActionInDialog('uninstall'); }, - canExecuteMethod: function () { return true; }, + canExecuteMethod: function () { return $scope.allowInstallModules; }, permission: 'platform:module:manage' } ]; @@ -52,7 +52,7 @@ angular.module('platformWebApp') }); } else { blade.toolbarCommands = []; - blade.mode = blade.currentEntity.$alternativeVersion ? 'update' : 'install'; + blade.mode = blade.currentEntity.$installedVersion ? 'update' : 'install'; $scope.availableVersions = _.where(moduleHelper.allmodules, { id: blade.currentEntity.id, isInstalled: false }); blade.isLoading = false; } @@ -151,6 +151,7 @@ angular.module('platformWebApp') }; blade.headIcon = 'fa fa-cubes'; + blade.fallbackIconUrl = '/images/module-logo.png'; if (blade.mode === 'advanced') { // the uploader diff --git a/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.tpl.html b/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.tpl.html index 9f98d5db5d2..7fb907e8345 100644 --- a/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.tpl.html +++ b/src/VirtoCommerce.Platform.Web/wwwroot/js/app/modularity/blades/module-detail.tpl.html @@ -1,4 +1,4 @@ -
+