diff --git a/services/static-webserver/client/.gitignore b/services/static-webserver/client/.gitignore index e661698d295..64479ebc19f 100644 --- a/services/static-webserver/client/.gitignore +++ b/services/static-webserver/client/.gitignore @@ -14,6 +14,3 @@ source/resource/iconfont/material # generator outputs /api/ /test/ - -# translations for the moment ignored -*.po diff --git a/services/static-webserver/client/Makefile b/services/static-webserver/client/Makefile index 9e01133e058..89fafcca1ae 100644 --- a/services/static-webserver/client/Makefile +++ b/services/static-webserver/client/Makefile @@ -88,6 +88,17 @@ serve: compile ## serves site compiled in image in 127.0.0.1:8080 docker run --rm -p 8080:8080 $(docker_image) $(qx_serve) --target=build +# qx translate -------------------------- + +define qx_translate_extract = + qx compile --update-po-files +endef + +.PHONY: translate-extract +translate-extract: translate-extract ## the generated .po files goes to source/translation https://qooxdoo.org/documentation/v7.8/#/development/howto/internationalization?id=translation + # qx compile --update-po-files + $(docker_compose) run $(if $(detached),--detach --name=$(detached),--rm) qooxdoo-kit $(qx_translate_extract) + # misc -------------------------- .PHONY: shell diff --git a/services/static-webserver/client/source/class/osparc/Application.js b/services/static-webserver/client/source/class/osparc/Application.js index b73de02cff8..fc167e79592 100644 --- a/services/static-webserver/client/source/class/osparc/Application.js +++ b/services/static-webserver/client/source/class/osparc/Application.js @@ -74,7 +74,7 @@ qx.Class.define("osparc.Application", { const webSocket = osparc.wrapper.WebSocket.getInstance(); webSocket.addListener("connect", () => osparc.WatchDog.getInstance().setOnline(true)); webSocket.addListener("disconnect", () => osparc.WatchDog.getInstance().setOnline(false)); - webSocket.addListener("logout", () => this.logout(qx.locale.Manager.tr("You were logged out"))); + webSocket.addListener("logout", () => this.logout(qx.locale.Manager.tr("You have been logged out"))); // alert the users that they are about to navigate away // from osparc. unfortunately it is not possible // to provide our own message here @@ -371,7 +371,7 @@ qx.Class.define("osparc.Application", { __checkNewRelease: function() { if (osparc.NewRelease.firstTimeISeeThisFrontend()) { const newRelease = new osparc.NewRelease(); - const title = this.tr("New Release"); + const title = this.tr("New Version Released"); const win = osparc.ui.window.Window.popUpInWindow(newRelease, title, 350, 135).set({ clickAwayClose: false, resizable: false, @@ -563,7 +563,7 @@ qx.Class.define("osparc.Application", { if (forcedReason) { osparc.FlashMessenger.logAs(forcedReason, "WARNING", 0); } else { - osparc.FlashMessenger.logAs(this.tr("You are logged out"), "INFO"); + osparc.FlashMessenger.logAs(this.tr("You have been logged out"), "INFO"); } this.__closeAllAndToLoginPage(); }, diff --git a/services/static-webserver/client/source/class/osparc/CookieExpirationTracker.js b/services/static-webserver/client/source/class/osparc/CookieExpirationTracker.js index d3a2bf325eb..f3584c4c39d 100644 --- a/services/static-webserver/client/source/class/osparc/CookieExpirationTracker.js +++ b/services/static-webserver/client/source/class/osparc/CookieExpirationTracker.js @@ -112,7 +112,7 @@ qx.Class.define("osparc.CookieExpirationTracker", { // /FLASH MESSAGE // __logoutUser: function() { - const reason = qx.locale.Manager.tr("Session expired"); + const reason = qx.locale.Manager.tr("Your session has expired"); qx.core.Init.getApplication().logout(reason); } } diff --git a/services/static-webserver/client/source/class/osparc/MaintenanceTracker.js b/services/static-webserver/client/source/class/osparc/MaintenanceTracker.js index d6aa69a3084..4a8d552deff 100644 --- a/services/static-webserver/client/source/class/osparc/MaintenanceTracker.js +++ b/services/static-webserver/client/source/class/osparc/MaintenanceTracker.js @@ -166,7 +166,7 @@ qx.Class.define("osparc.MaintenanceTracker", { end: null, reason: null }); - const reason = qx.locale.Manager.tr("We are under maintenance. Please check back later"); + const reason = qx.locale.Manager.tr("The service is under maintenance. Please check back later"); qx.core.Init.getApplication().logout(reason); }, diff --git a/services/static-webserver/client/source/class/osparc/TooSmallDialog.js b/services/static-webserver/client/source/class/osparc/TooSmallDialog.js index b60219820f6..16b2e679118 100644 --- a/services/static-webserver/client/source/class/osparc/TooSmallDialog.js +++ b/services/static-webserver/client/source/class/osparc/TooSmallDialog.js @@ -19,7 +19,7 @@ qx.Class.define("osparc.TooSmallDialog", { extend: osparc.ui.window.SingletonWindow, construct: function() { - this.base(arguments, "too-small-logout", this.tr("Window too small")); + this.base(arguments, "too-small-logout", this.tr("Window size too small")); this.set({ layout: new qx.ui.layout.VBox(10), diff --git a/services/static-webserver/client/source/class/osparc/auth/ui/Login2FAValidationCodeView.js b/services/static-webserver/client/source/class/osparc/auth/ui/Login2FAValidationCodeView.js index 59f560831e3..ca2beb0757a 100644 --- a/services/static-webserver/client/source/class/osparc/auth/ui/Login2FAValidationCodeView.js +++ b/services/static-webserver/client/source/class/osparc/auth/ui/Login2FAValidationCodeView.js @@ -97,7 +97,7 @@ qx.Class.define("osparc.auth.ui.Login2FAValidationCodeView", { alignY: "middle" })); const resendCodeDesc = new qx.ui.basic.Label().set({ - value: this.tr("Didn't receive the code? Resend code") + value: this.tr("Didn't receive the code? Click to resend") }); resendLayout.add(resendCodeDesc); diff --git a/services/static-webserver/client/source/class/osparc/auth/ui/RequestAccount.js b/services/static-webserver/client/source/class/osparc/auth/ui/RequestAccount.js index ced65de8e40..8ab05f16cd3 100644 --- a/services/static-webserver/client/source/class/osparc/auth/ui/RequestAccount.js +++ b/services/static-webserver/client/source/class/osparc/auth/ui/RequestAccount.js @@ -408,7 +408,7 @@ qx.Class.define("osparc.auth.ui.RequestAccount", { }; osparc.data.Resources.fetch("auth", "postRequestAccount", params) .then(() => { - const msg = this.tr("The request is being processed, you will hear from us in the coming hours"); + const msg = this.tr("Your request is being processed. You will hear from us soon"); osparc.FlashMessenger.logAs(msg, "INFO"); this.fireDataEvent("done"); }) diff --git a/services/static-webserver/client/source/class/osparc/auth/ui/VerifyPhoneNumberView.js b/services/static-webserver/client/source/class/osparc/auth/ui/VerifyPhoneNumberView.js index 95f2b4614d3..65c5996f1f8 100644 --- a/services/static-webserver/client/source/class/osparc/auth/ui/VerifyPhoneNumberView.js +++ b/services/static-webserver/client/source/class/osparc/auth/ui/VerifyPhoneNumberView.js @@ -61,7 +61,7 @@ qx.Class.define("osparc.auth.ui.VerifyPhoneNumberView", { this.add(verificationInfoTitle); const verificationInfoDesc = new qx.ui.basic.Label().set({ - value: this.tr("We will send you a text message to your mobile phone to authenticate you each time you log in."), + value: this.tr("A text message will be sent to your mobile phone for authentication each time you log in."), rich: true, wrap: true }); diff --git a/services/static-webserver/client/source/class/osparc/dashboard/StudyBrowser.js b/services/static-webserver/client/source/class/osparc/dashboard/StudyBrowser.js index 884dbc1f8ad..6328a0c5ade 100644 --- a/services/static-webserver/client/source/class/osparc/dashboard/StudyBrowser.js +++ b/services/static-webserver/client/source/class/osparc/dashboard/StudyBrowser.js @@ -2141,16 +2141,18 @@ qx.Class.define("osparc.dashboard.StudyBrowser", { if (msg) { osparc.FlashMessenger.logAs(msg, msgLevel); } + osparc.store.PollTasks.getInstance().removeTask(task); osparc.task.TasksContainer.getInstance().removeTaskUI(taskUI); this._resourcesContainer.removeNonResourceCard(duplicatingStudyCard); }; task.addListener("taskAborted", () => { const msg = this.tr("Duplication cancelled"); - finished(msg, "INFO"); + finished(msg, "WARNING"); }); task.addListener("resultReceived", e => { - finished(); + const msg = this.tr("Duplication completed"); + finished(msg, "INFO"); const duplicatedStudyData = e.getData(); this._updateStudyData(duplicatedStudyData); }); diff --git a/services/static-webserver/client/source/class/osparc/dashboard/TemplateBrowser.js b/services/static-webserver/client/source/class/osparc/dashboard/TemplateBrowser.js index 675801a3016..bcaebf17aa6 100644 --- a/services/static-webserver/client/source/class/osparc/dashboard/TemplateBrowser.js +++ b/services/static-webserver/client/source/class/osparc/dashboard/TemplateBrowser.js @@ -346,18 +346,40 @@ qx.Class.define("osparc.dashboard.TemplateBrowser", { // MENU // // TASKS // + __tasksToCards: function() { + const tasks = osparc.store.PollTasks.getInstance().getPublishTemplateTasks(); + tasks.forEach(task => { + const studyName = ""; + this.taskToTemplateReceived(task, studyName); + }); + }, + + taskToTemplateReceived: function(task, studyName) { + const toTemplateTaskUI = new osparc.task.ToTemplate(studyName); + toTemplateTaskUI.setTask(task); + + osparc.task.TasksContainer.getInstance().addTaskUI(toTemplateTaskUI); + + const cardTitle = this.tr("Publishing ") + studyName; + const toTemplateCard = this._addTaskCard(task, cardTitle, osparc.task.ToTemplate.ICON); + if (toTemplateCard) { + this.__attachToTemplateEventHandler(task, toTemplateTaskUI, toTemplateCard); + } + }, + __attachToTemplateEventHandler: function(task, taskUI, toTemplateCard) { const finished = (msg, msgLevel) => { if (msg) { osparc.FlashMessenger.logAs(msg, msgLevel); } + osparc.store.PollTasks.getInstance().removeTask(task); osparc.task.TasksContainer.getInstance().removeTaskUI(taskUI); this._resourcesContainer.removeNonResourceCard(toTemplateCard); }; task.addListener("taskAborted", () => { const msg = this.tr("Study to Template cancelled"); - finished(msg, "INFO"); + finished(msg, "WARNING"); }); task.addListener("updateReceived", e => { const updateData = e.getData(); @@ -372,7 +394,8 @@ qx.Class.define("osparc.dashboard.TemplateBrowser", { } }, this); task.addListener("resultReceived", e => { - finished(); + const msg = this.tr("Template created"); + finished(msg, "INFO"); this.reloadResources(); }); task.addListener("pollingError", e => { @@ -381,27 +404,6 @@ qx.Class.define("osparc.dashboard.TemplateBrowser", { finished(msg, "ERROR"); }); }, - - __tasksToCards: function() { - const tasks = osparc.store.PollTasks.getInstance().getPublishTemplateTasks(); - tasks.forEach(task => { - const studyName = ""; - this.taskToTemplateReceived(task, studyName); - }); - }, - - taskToTemplateReceived: function(task, studyName) { - const toTemplateTaskUI = new osparc.task.ToTemplate(studyName); - toTemplateTaskUI.setTask(task); - - osparc.task.TasksContainer.getInstance().addTaskUI(toTemplateTaskUI); - - const cardTitle = this.tr("Publishing ") + studyName; - const toTemplateCard = this._addTaskCard(task, cardTitle, osparc.task.ToTemplate.ICON); - if (toTemplateCard) { - this.__attachToTemplateEventHandler(task, toTemplateTaskUI, toTemplateCard); - } - }, // TASKS // } }); diff --git a/services/static-webserver/client/source/class/osparc/data/Resources.js b/services/static-webserver/client/source/class/osparc/data/Resources.js index f48440a43c3..c738cd8c3b6 100644 --- a/services/static-webserver/client/source/class/osparc/data/Resources.js +++ b/services/static-webserver/client/source/class/osparc/data/Resources.js @@ -1491,7 +1491,7 @@ qx.Class.define("osparc.data.Resources", { if ("status" in err && err.status === 401) { // Unauthorized again, the cookie might have expired. // We can assume that all calls after this will respond with 401, so bring the user ot the login page. - qx.core.Init.getApplication().logout(qx.locale.Manager.tr("You were logged out. Your cookie might have expired.")); + qx.core.Init.getApplication().logout(qx.locale.Manager.tr("You have been logged out. Your cookie might have expired.")); } }); } diff --git a/services/static-webserver/client/source/class/osparc/data/model/NodeProgressSequence.js b/services/static-webserver/client/source/class/osparc/data/model/NodeProgressSequence.js index b11cdde65c6..bb67236294e 100644 --- a/services/static-webserver/client/source/class/osparc/data/model/NodeProgressSequence.js +++ b/services/static-webserver/client/source/class/osparc/data/model/NodeProgressSequence.js @@ -123,7 +123,7 @@ qx.Class.define("osparc.data.model.NodeProgressSequence", { createDisclaimerText: function() { const disclaimerText = new qx.ui.basic.Atom().set({ - label: qx.locale.Manager.tr("Please be patient, this process can take a few minutes ..."), + label: qx.locale.Manager.tr("Please wait, this process may take a few minutes ..."), padding: [20, 10], gap: 15, icon: "@FontAwesome5Solid/exclamation-triangle/16", @@ -187,10 +187,10 @@ qx.Class.define("osparc.data.model.NodeProgressSequence", { getProgress: function(report) { if (report.unit) { const attempt = ("attempt" in report && report["attempt"] > 1) ? `(attempt ${report["attempt"]}) ` : ""; - const current_value = osparc.utils.Utils.bytesToSize(report["actual_value"], 1, false); - const total_value = osparc.utils.Utils.bytesToSize(report["total"], 1, false) + const currentValue = osparc.utils.Utils.bytesToSize(report["actual_value"], 1, false); + const totalValue = osparc.utils.Utils.bytesToSize(report["total"], 1, false) return { - progressLabel: `${attempt}${current_value} / ${total_value}`, + progressLabel: `${attempt}${currentValue} / ${totalValue}`, value: report["actual_value"] / report["total"] } } diff --git a/services/static-webserver/client/source/class/osparc/desktop/MainPage.js b/services/static-webserver/client/source/class/osparc/desktop/MainPage.js index 28133e59690..a17b42e9a8d 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/MainPage.js +++ b/services/static-webserver/client/source/class/osparc/desktop/MainPage.js @@ -304,7 +304,7 @@ qx.Class.define("osparc.desktop.MainPage", { osparc.data.Resources.fetch("snapshots", "checkout", params) .then(snapshotResp => { if (!snapshotResp) { - const msg = this.tr("Snapshot not found"); + const msg = this.tr("No snapshot found"); throw new Error(msg); } const params2 = { diff --git a/services/static-webserver/client/source/class/osparc/desktop/account/ProfilePage.js b/services/static-webserver/client/source/class/osparc/desktop/account/ProfilePage.js index 07a32d3358b..e522d53975f 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/account/ProfilePage.js +++ b/services/static-webserver/client/source/class/osparc/desktop/account/ProfilePage.js @@ -142,7 +142,7 @@ qx.Class.define("osparc.desktop.account.ProfilePage", { expirationLayout.add(expirationDateLabel); const expirationDate = new qx.ui.basic.Label(); expirationLayout.add(expirationDate); - const infoLabel = this.tr("Please contact us by email:
"); + const infoLabel = this.tr("Please contact us via email:
"); const infoExtension = new osparc.ui.hint.InfoHint(infoLabel); const supportEmail = osparc.store.VendorInfo.getInstance().getSupportEmail(); infoExtension.setHintText(infoLabel + supportEmail); @@ -348,7 +348,7 @@ qx.Class.define("osparc.desktop.account.ProfilePage", { }); const optOutMessage = new qx.ui.basic.Atom().set({ - label: this.tr("If all searchable fields are hidden, you will not be findable."), + label: this.tr("If all searchable fields are hidden, you will not be discoverable."), icon: "@FontAwesome5Solid/exclamation-triangle/14", gap: 8, allowGrowX: false, @@ -381,7 +381,7 @@ qx.Class.define("osparc.desktop.account.ProfilePage", { }, __create2FASection: function() { - const box = osparc.ui.window.TabbedView.createSectionBox(this.tr("2 Factor Authentication")); + const box = osparc.ui.window.TabbedView.createSectionBox(this.tr("Two-Factor Authentication")); const label = osparc.ui.window.TabbedView.createHelpLabel(this.tr("Set your preferred method to use for two-factor authentication when signing in:")); box.add(label); @@ -419,7 +419,7 @@ qx.Class.define("osparc.desktop.account.ProfilePage", { if (selectedId === "DISABLED") { const discourageTitle = this.tr("You are about to disable the 2FA"); const discourageText = this.tr("\ - The 2 Factor Authentication is one more measure to prevent hackers from accessing your account with an additional layer of security. \ + The Two-Factor Authentication is one more measure to prevent hackers from accessing your account with an additional layer of security. \ When you sign in, 2FA helps make sure that your resources and personal information stays private, safe and secure.\ "); const win = new osparc.ui.window.Confirmation(discourageTitle).set({ diff --git a/services/static-webserver/client/source/class/osparc/desktop/credits/CreditsPerService.js b/services/static-webserver/client/source/class/osparc/desktop/credits/CreditsPerService.js index 6c444712ecf..e08659fa8f3 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/credits/CreditsPerService.js +++ b/services/static-webserver/client/source/class/osparc/desktop/credits/CreditsPerService.js @@ -89,7 +89,7 @@ qx.Class.define("osparc.desktop.credits.CreditsPerService", { this._add(uiEntry); }); } else { - const nothingFound = new qx.ui.basic.Label(this.tr("No usage found")).set({ + const nothingFound = new qx.ui.basic.Label(this.tr("No usage records found")).set({ font: "text-14", padding: 20, }); diff --git a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js index 6844796624d..c7f8ca40578 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js +++ b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js @@ -243,8 +243,8 @@ qx.Class.define("osparc.desktop.organizations.MembersList", { const canIDelete = organization.getAccessRights()["delete"]; const introText = canIWrite ? - this.tr("You can add new members and change their roles.") : - this.tr("You can't add new members to this Organization. Please contact an Administrator or Manager."); + this.tr("You can add new members and assign roles.") : + this.tr("You cannot add new members to this Organization. Please contact an Administrator or Manager."); this.__introLabel.setValue(introText); this.__addMembersButton.set({ @@ -508,7 +508,7 @@ qx.Class.define("osparc.desktop.organizations.MembersList", { } else if (isThereAnyManager) { rUSure += `
There is no ${osparc.data.Roles.ORG[3].label} in this Organization.`; } - rUSure += "

" + this.tr("If you Leave, the page will be reloaded."); + rUSure += "

" + this.tr("If you leave, the page will reload."); const confirmationWin = new osparc.ui.window.Confirmation(rUSure).set({ caption: this.tr("Leave Organization"), confirmText: this.tr("Leave"), diff --git a/services/static-webserver/client/source/class/osparc/desktop/organizations/OrganizationDetails.js b/services/static-webserver/client/source/class/osparc/desktop/organizations/OrganizationDetails.js index 29ce9557ccb..bfc757d2880 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/organizations/OrganizationDetails.js +++ b/services/static-webserver/client/source/class/osparc/desktop/organizations/OrganizationDetails.js @@ -71,7 +71,7 @@ qx.Class.define("osparc.desktop.organizations.OrganizationDetails", { const titleLayout = this.__titleLayout = new qx.ui.container.Composite(new qx.ui.layout.HBox(5)); const prevBtn = new qx.ui.form.Button().set({ - toolTipText: this.tr("Back to Organizations list"), + toolTipText: this.tr("Return to Organizations list"), icon: "@FontAwesome5Solid/arrow-left/20", backgroundColor: "transparent" }); diff --git a/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodDetails.js b/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodDetails.js index 49dbab989ed..936f032db04 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodDetails.js +++ b/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodDetails.js @@ -47,7 +47,7 @@ qx.Class.define("osparc.desktop.paymentMethods.PaymentMethodDetails", { members: { __buildLayout: function(paymentMethodData) { [ - [this.tr("Holder name"), paymentMethodData["cardHolderName"]], + [this.tr("Card Holder name"), paymentMethodData["cardHolderName"]], [this.tr("Type"), paymentMethodData["cardType"]], [this.tr("Number"), paymentMethodData["cardNumberMasked"]], [this.tr("Expiration date"), paymentMethodData["expirationMonth"] + "/" + paymentMethodData["expirationYear"]] diff --git a/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodListItem.js b/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodListItem.js index 9342f10f066..90c3348826e 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodListItem.js +++ b/services/static-webserver/client/source/class/osparc/desktop/paymentMethods/PaymentMethodListItem.js @@ -182,7 +182,7 @@ qx.Class.define("osparc.desktop.paymentMethods.PaymentMethodListItem", { }, __deletePressed: function() { - const msg = this.tr("Are you sure you want to delete the Payment Method?"); + const msg = this.tr("Are you sure you want to delete this Payment Method?"); const win = new osparc.ui.window.Confirmation(msg).set({ caption: this.tr("Delete Payment Method"), confirmText: this.tr("Delete"), diff --git a/services/static-webserver/client/source/class/osparc/desktop/preferences/pages/TokensPage.js b/services/static-webserver/client/source/class/osparc/desktop/preferences/pages/TokensPage.js index da72f644e7b..b22542d6d4d 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/preferences/pages/TokensPage.js +++ b/services/static-webserver/client/source/class/osparc/desktop/preferences/pages/TokensPage.js @@ -173,12 +173,12 @@ qx.Class.define("osparc.desktop.preferences.pages.TokensPage", { __createTokensSection: function() { // layout - const box = osparc.ui.window.TabbedView.createSectionBox(this.tr("External Service Tokens")); + const box = osparc.ui.window.TabbedView.createSectionBox(this.tr("API Tokens for External Services")); - const label = osparc.ui.window.TabbedView.createHelpLabel(this.tr("Enter the API tokens to access external services.")); + const label = osparc.ui.window.TabbedView.createHelpLabel(this.tr("Provide the API tokens needed to access external services.")); box.add(label); - const validTokensGB = this.__validTokensGB = osparc.ui.window.TabbedView.createSectionBox(this.tr("Existing Tokens")); + const validTokensGB = this.__validTokensGB = osparc.ui.window.TabbedView.createSectionBox(this.tr("Current Tokens")); box.add(validTokensGB); const supportedExternalsGB = this.__supportedExternalsGB = osparc.ui.window.TabbedView.createSectionBox(this.tr("Supported services")).set({ @@ -280,7 +280,7 @@ qx.Class.define("osparc.desktop.preferences.pages.TokensPage", { return; } - const msg = this.tr("Do you want to delete the Token?"); + const msg = this.tr("Are you sure you want to delete this token?"); const win = new osparc.ui.window.Confirmation(msg).set({ caption: this.tr("Delete Token"), confirmText: this.tr("Delete"), @@ -326,13 +326,13 @@ qx.Class.define("osparc.desktop.preferences.pages.TokensPage", { const newTokenKey = new qx.ui.form.TextField(); newTokenKey.set({ - placeholder: this.tr("Input your token key") + placeholder: this.tr("Enter your token key") }); form.add(newTokenKey, this.tr("Key")); const newTokenSecret = new qx.ui.form.TextField(); newTokenSecret.set({ - placeholder: this.tr("Input your token secret") + placeholder: this.tr("Enter your token secret") }); form.add(newTokenSecret, this.tr("Secret")); diff --git a/services/static-webserver/client/source/class/osparc/desktop/preferences/window/CreateAPIKey.js b/services/static-webserver/client/source/class/osparc/desktop/preferences/window/CreateAPIKey.js index 858ea2b703a..ca5ba07cd70 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/preferences/window/CreateAPIKey.js +++ b/services/static-webserver/client/source/class/osparc/desktop/preferences/window/CreateAPIKey.js @@ -17,7 +17,7 @@ qx.Class.define("osparc.desktop.preferences.window.CreateAPIKey", { extend: osparc.desktop.preferences.window.APIKeyBase, construct: function() { - const caption = this.tr("Create API Key"); + const caption = this.tr("Generate API Key"); const infoText = this.tr("Key names must be unique."); this.base(arguments, caption, infoText); @@ -48,7 +48,7 @@ qx.Class.define("osparc.desktop.preferences.window.CreateAPIKey", { if (date) { // allow only future dates if (new Date() > new Date(date)) { - const msg = this.tr("Choose a future date"); + const msg = this.tr("Select a future date"); osparc.FlashMessenger.logAs(msg, "WARNING"); expirationDate.resetValue(); } else { diff --git a/services/static-webserver/client/source/class/osparc/desktop/preferences/window/ShowAPIKey.js b/services/static-webserver/client/source/class/osparc/desktop/preferences/window/ShowAPIKey.js index 6c7209d3ecc..8154c1f6296 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/preferences/window/ShowAPIKey.js +++ b/services/static-webserver/client/source/class/osparc/desktop/preferences/window/ShowAPIKey.js @@ -18,7 +18,7 @@ qx.Class.define("osparc.desktop.preferences.window.ShowAPIKey", { construct: function(key, secret, baseUrl) { const caption = this.tr("API Key"); - const infoText = this.tr("For your protection, store your access keys securely and do not share them. You will not be able to access the key again once this window is closed."); + const infoText = this.tr("For your security, store your access keys safely. You will not be able to access them again after closing this window."); this.base(arguments, caption, infoText); this.set({ diff --git a/services/static-webserver/client/source/class/osparc/desktop/wallets/WalletDetails.js b/services/static-webserver/client/source/class/osparc/desktop/wallets/WalletDetails.js index 1700dd302d3..d55f6ebd35a 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/wallets/WalletDetails.js +++ b/services/static-webserver/client/source/class/osparc/desktop/wallets/WalletDetails.js @@ -66,7 +66,7 @@ qx.Class.define("osparc.desktop.wallets.WalletDetails", { const titleLayout = this.__titleLayout = new qx.ui.container.Composite(new qx.ui.layout.HBox(5)); const prevBtn = new qx.ui.form.Button().set({ - toolTipText: this.tr("Back to Credit Accounts list"), + toolTipText: this.tr("Return to Credit Accounts list"), icon: "@FontAwesome5Solid/arrow-left/20", backgroundColor: "transparent" }); diff --git a/services/static-webserver/client/source/class/osparc/editor/MarkdownEditor.js b/services/static-webserver/client/source/class/osparc/editor/MarkdownEditor.js index a8785cebc8a..2d08dc0bcf6 100644 --- a/services/static-webserver/client/source/class/osparc/editor/MarkdownEditor.js +++ b/services/static-webserver/client/source/class/osparc/editor/MarkdownEditor.js @@ -31,7 +31,7 @@ qx.Class.define("osparc.editor.MarkdownEditor", { this.getChildControl("preview-markdown"); this.getChildControl("subtitle").set({ - value: this.tr("Supports Markdown") + value: this.tr("Markdown supported") }); }, diff --git a/services/static-webserver/client/source/class/osparc/file/FileDrop.js b/services/static-webserver/client/source/class/osparc/file/FileDrop.js index df741909d44..92b4f15206c 100644 --- a/services/static-webserver/client/source/class/osparc/file/FileDrop.js +++ b/services/static-webserver/client/source/class/osparc/file/FileDrop.js @@ -39,7 +39,7 @@ qx.Class.define("osparc.file.FileDrop", { let msg = "
"; const options = [ this.tr("Upload file"), - this.tr("Drop file from explorer"), + this.tr("Drop file from File Explorer"), this.tr("Drop file from tree"), this.tr("Provide Link") ]; @@ -104,7 +104,7 @@ qx.Class.define("osparc.file.FileDrop", { return files; }, - ONE_FILE_ONLY: qx.locale.Manager.tr("Only one file at a time is accepted.") + "
" + qx.locale.Manager.tr("Please zip all files together."), + ONE_FILE_ONLY: qx.locale.Manager.tr("Only one file can be uploaded at a time.") + "
" + qx.locale.Manager.tr("Please compress all files into a single zip file."), }, events: { @@ -304,7 +304,7 @@ qx.Class.define("osparc.file.FileDrop", { osparc.FlashMessenger.logError(osparc.file.FileDrop.ONE_FILE_ONLY); } } else { - osparc.FlashMessenger.logError(this.tr("Folders are not accepted. You might want to upload a zip file.")); + osparc.FlashMessenger.logError(this.tr("Folders are not accepted. Please upload a zip file instead.")); } } }, diff --git a/services/static-webserver/client/source/class/osparc/file/FileLabelWithActions.js b/services/static-webserver/client/source/class/osparc/file/FileLabelWithActions.js index 74e8a64e58f..cdd8c0c0e5f 100644 --- a/services/static-webserver/client/source/class/osparc/file/FileLabelWithActions.js +++ b/services/static-webserver/client/source/class/osparc/file/FileLabelWithActions.js @@ -189,8 +189,8 @@ qx.Class.define("osparc.file.FileLabelWithActions", { } } - let msg = this.tr("This operation cannot be undone."); - msg += isFolderSelected ? ("
"+this.tr("All the content of the folders will be deleted.")) : ""; + let msg = this.tr("This action cannot be undone."); + msg += isFolderSelected ? ("
"+this.tr("All contents within the folders will be deleted.")) : ""; msg += "
" + this.tr("Do you want to proceed?"); const confirmationWin = new osparc.ui.window.Confirmation(msg).set({ caption: this.tr("Delete"), diff --git a/services/static-webserver/client/source/class/osparc/info/MergedLarge.js b/services/static-webserver/client/source/class/osparc/info/MergedLarge.js index 23c64d87d48..ff95c2ea350 100644 --- a/services/static-webserver/client/source/class/osparc/info/MergedLarge.js +++ b/services/static-webserver/client/source/class/osparc/info/MergedLarge.js @@ -415,7 +415,7 @@ qx.Class.define("osparc.info.MergedLarge", { qx.event.message.Bus.getInstance().dispatchByName("updateStudy", studyData); }) .catch(err => { - const msg = this.tr("There was an issue while updating the information."); + const msg = this.tr("An issue occurred while updating the information."); osparc.FlashMessenger.logError(err, msg); }); } diff --git a/services/static-webserver/client/source/class/osparc/info/ServiceLarge.js b/services/static-webserver/client/source/class/osparc/info/ServiceLarge.js index 19cd4f1484c..d0ab2cf36b1 100644 --- a/services/static-webserver/client/source/class/osparc/info/ServiceLarge.js +++ b/services/static-webserver/client/source/class/osparc/info/ServiceLarge.js @@ -575,7 +575,7 @@ qx.Class.define("osparc.info.ServiceLarge", { this.fireDataEvent("updateService", this.getService()); }) .catch(err => { - const msg = this.tr("There was an issue while updating the information."); + const msg = this.tr("An issue occurred while updating the information."); osparc.FlashMessenger.logError(err, msg); }) .finally(() => this.setEnabled(true)); diff --git a/services/static-webserver/client/source/class/osparc/info/StudyLarge.js b/services/static-webserver/client/source/class/osparc/info/StudyLarge.js index d0162e85b0d..e0b66e41047 100644 --- a/services/static-webserver/client/source/class/osparc/info/StudyLarge.js +++ b/services/static-webserver/client/source/class/osparc/info/StudyLarge.js @@ -316,7 +316,7 @@ qx.Class.define("osparc.info.StudyLarge", { } }) .catch(err => { - const msg = this.tr("There was an issue while updating the information."); + const msg = this.tr("An issue occurred while updating the information."); osparc.FlashMessenger.logError(err, msg); }); } diff --git a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudy.js b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudy.js index 8b997fd86df..6b3b54b0994 100644 --- a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudy.js +++ b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudy.js @@ -136,7 +136,7 @@ qx.Class.define("osparc.metadata.ServicesInStudy", { infoButton.addListener("execute", () => { const metadata = osparc.store.Services.getMetadata(node["key"], node["version"]); if (metadata === null) { - osparc.FlashMessenger.logAs(this.tr("Service information could not be retrieved"), "WARNING"); + osparc.FlashMessenger.logAs(this.tr("Could not retrieve service information"), "WARNING"); return; } const serviceDetails = new osparc.info.ServiceLarge(metadata, { @@ -163,7 +163,7 @@ qx.Class.define("osparc.metadata.ServicesInStudy", { const nodeMetadata = osparc.store.Services.getMetadata(node["key"], node["version"]); if (nodeMetadata === null) { - osparc.FlashMessenger.logAs(this.tr("Some service information could not be retrieved"), "WARNING"); + osparc.FlashMessenger.logAs(this.tr("Could not retrieve some service information"), "WARNING"); break; } } diff --git a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyBootOpts.js b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyBootOpts.js index 72ad2d4530e..62e507c6a79 100644 --- a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyBootOpts.js +++ b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyBootOpts.js @@ -76,7 +76,7 @@ qx.Class.define("osparc.metadata.ServicesInStudyBootOpts", { const node = workbench[nodeId]; const nodeMetadata = osparc.store.Services.getMetadata(node["key"], node["version"]); if (nodeMetadata === null) { - osparc.FlashMessenger.logAs(this.tr("Some service information could not be retrieved"), "WARNING"); + osparc.FlashMessenger.logAs(this.tr("Could not retrieve some service information"), "WARNING"); break; } const canIWrite = osparc.data.model.Study.canIWrite(this._studyData["accessRights"]); diff --git a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyUpdate.js b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyUpdate.js index 5f4df973899..3ab80d4fb7d 100644 --- a/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyUpdate.js +++ b/services/static-webserver/client/source/class/osparc/metadata/ServicesInStudyUpdate.js @@ -34,13 +34,13 @@ qx.Class.define("osparc.metadata.ServicesInStudyUpdate", { versionLabel.set({ textColor: "text-on-warning", // because the background is always yellow backgroundColor: osparc.service.StatusUI.getColor("deprecated"), - toolTipText: qx.locale.Manager.tr("Service deprecated, please update") + toolTipText: qx.locale.Manager.tr("This service is deprecated. Please update.") }); } else if (isRetired) { versionLabel.set({ textColor: "text-on-warning", // because the background is always red backgroundColor: osparc.service.StatusUI.getColor("retired"), - toolTipText: qx.locale.Manager.tr("Service retired, please update") + toolTipText: qx.locale.Manager.tr("This service has been retired. Please update.") }); } } @@ -66,16 +66,16 @@ qx.Class.define("osparc.metadata.ServicesInStudyUpdate", { .then(resp => { const services = resp["services"]; if (osparc.study.Utils.getCantExecuteServices(services).length) { - msg += this.tr("Some services are not accessible. Please contact service owner:"); + msg += this.tr("Some services are inaccessible. Please contact the service owner:"); msg += "

"; } if (osparc.study.Utils.anyServiceRetired(services)) { - msg += this.tr("Services marked in red are retired: you cannot use them anymore."); + msg += this.tr("Services marked in red are retired and can no longer be used."); if (canIWrite) { msg += "
" + this.tr("If the Update button is disabled, they might require manual intervention to be updated:"); msg += "
- " + this.tr("Open the study"); msg += "
- " + this.tr("Click on the retired service, download the data"); - msg += "
- " + this.tr("Upload the data to an updated version"); + msg += "
- " + this.tr("Upload the data to a newer version"); } msg += "

"; } @@ -91,7 +91,7 @@ qx.Class.define("osparc.metadata.ServicesInStudyUpdate", { msg += this.tr("All services are up to date to their latest compatible version."); msg += "
"; } else if (canIWrite) { - msg += this.tr("Use the Update buttons to bring the services to their latest compatible version."); + msg += this.tr("Click Update to upgrade services to the latest compatible version."); msg += "
"; } else { msg += this.tr("Some services are not up to date."); diff --git a/services/static-webserver/client/source/class/osparc/navigation/BreadcrumbsSlideshow.js b/services/static-webserver/client/source/class/osparc/navigation/BreadcrumbsSlideshow.js index 21089318d18..e69e8b66ded 100644 --- a/services/static-webserver/client/source/class/osparc/navigation/BreadcrumbsSlideshow.js +++ b/services/static-webserver/client/source/class/osparc/navigation/BreadcrumbsSlideshow.js @@ -46,7 +46,7 @@ qx.Class.define("osparc.navigation.BreadcrumbsSlideshow", { if (study.isPipelineEmpty()) { label.setValue(this.tr("Pipeline is empty")); } else { - label.setValue(this.tr("There are no visible nodes, enable some by editing the App Mode")); + label.setValue(this.tr("No visible nodes. Enable some by adjusting the app mode.")); } this._add(label); } diff --git a/services/static-webserver/client/source/class/osparc/node/UpdateResourceLimitsView.js b/services/static-webserver/client/source/class/osparc/node/UpdateResourceLimitsView.js index b00e969f79f..507eef686dd 100644 --- a/services/static-webserver/client/source/class/osparc/node/UpdateResourceLimitsView.js +++ b/services/static-webserver/client/source/class/osparc/node/UpdateResourceLimitsView.js @@ -154,7 +154,7 @@ qx.Class.define("osparc.node.UpdateResourceLimitsView", { }; osparc.data.Resources.fetch("nodesInStudyResources", "put", params) .then(() => { - osparc.FlashMessenger.logAs(this.tr("Limits successfully updated")); + osparc.FlashMessenger.logAs(this.tr("Limits have been successfully updated")); }) .catch(err => osparc.FlashMessenger.logError(err, this.tr("Something went wrong while updating the limits"))) .finally(() => { diff --git a/services/static-webserver/client/source/class/osparc/po/POCenter.js b/services/static-webserver/client/source/class/osparc/po/POCenter.js index 25c3fa01acd..39a10d9afdb 100644 --- a/services/static-webserver/client/source/class/osparc/po/POCenter.js +++ b/services/static-webserver/client/source/class/osparc/po/POCenter.js @@ -42,7 +42,7 @@ qx.Class.define("osparc.po.POCenter", { }, __addPreRegistrationPage: function() { - const title = this.tr("PreRegistration"); + const title = this.tr("Pre-Registration"); const iconSrc = "@FontAwesome5Solid/address-card/22"; const preRegistration = new osparc.po.PreRegistration(); this.addTab(title, iconSrc, preRegistration); diff --git a/services/static-webserver/client/source/class/osparc/pricing/PlanDetails.js b/services/static-webserver/client/source/class/osparc/pricing/PlanDetails.js index 1e6d94183ff..a745dbf1509 100644 --- a/services/static-webserver/client/source/class/osparc/pricing/PlanDetails.js +++ b/services/static-webserver/client/source/class/osparc/pricing/PlanDetails.js @@ -64,7 +64,7 @@ qx.Class.define("osparc.pricing.PlanDetails", { break; case "back-to-pp-button": control = new qx.ui.form.Button().set({ - toolTipText: this.tr("Back to Pricing Plans"), + toolTipText: this.tr("Return to Pricing Plans"), icon: "@FontAwesome5Solid/arrow-left/20", backgroundColor: "transparent" }); diff --git a/services/static-webserver/client/source/class/osparc/product/AboutProduct.js b/services/static-webserver/client/source/class/osparc/product/AboutProduct.js index a9f8328a349..2736f96425a 100644 --- a/services/static-webserver/client/source/class/osparc/product/AboutProduct.js +++ b/services/static-webserver/client/source/class/osparc/product/AboutProduct.js @@ -60,7 +60,7 @@ qx.Class.define("osparc.product.AboutProduct", { this.__buildTIPLayout(); break; default: { - const noInfoText = this.tr("Information not available"); + const noInfoText = this.tr("Information is unavailable"); const noInfoLabel = osparc.product.quickStart.Utils.createLabel(noInfoText); this.add(noInfoLabel); break; diff --git a/services/static-webserver/client/source/class/osparc/store/PollTasks.js b/services/static-webserver/client/source/class/osparc/store/PollTasks.js index 5126fdff983..625b1838451 100644 --- a/services/static-webserver/client/source/class/osparc/store/PollTasks.js +++ b/services/static-webserver/client/source/class/osparc/store/PollTasks.js @@ -34,29 +34,18 @@ qx.Class.define("osparc.store.PollTasks", { .then(tasksData => { tasksData.forEach(taskData => { const interval = 1000; - this.addTask(taskData, interval); + this.__addTask(taskData, interval); }); }) .catch(err => console.error(err)); }, - addTask: function(taskData, interval = 1000) { - const tasks = this.getTasks(); - const index = tasks.findIndex(t => t.getTaskId() === taskData["task_id"]); - if (index === -1) { - const task = new osparc.data.PollTask(taskData, interval); - tasks.push(task); - return task; - } - return null; - }, - createPollingTask: function(fetchPromise, interval) { return new Promise((resolve, reject) => { fetchPromise .then(taskData => { if ("status_href" in taskData) { - const task = this.addTask(taskData, interval); + const task = this.__addTask(taskData, interval); resolve(task); } else { throw Error("Status missing"); @@ -66,6 +55,17 @@ qx.Class.define("osparc.store.PollTasks", { }); }, + __addTask: function(taskData, interval = 1000) { + const tasks = this.getTasks(); + const index = tasks.findIndex(t => t.getTaskId() === taskData["task_id"]); + if (index === -1) { + const task = new osparc.data.PollTask(taskData, interval); + tasks.push(task); + return task; + } + return null; + }, + getDuplicateStudyTasks: function() { return this.getTasks().filter(task => task.getTaskId().includes("from_study") && !task.getTaskId().includes("as_template")); }, diff --git a/services/static-webserver/client/source/class/osparc/store/Services.js b/services/static-webserver/client/source/class/osparc/store/Services.js index f8a1c222b1e..a01d4cf91a0 100644 --- a/services/static-webserver/client/source/class/osparc/store/Services.js +++ b/services/static-webserver/client/source/class/osparc/store/Services.js @@ -268,7 +268,7 @@ qx.Class.define("osparc.store.Services", { }, getInaccessibleServicesMsg: function(inaccessibleServices, workbench) { - let msg = qx.locale.Manager.tr("Some services are not accessible:
"); + let msg = qx.locale.Manager.tr("Some services are inaccessible:
"); Object.values(workbench).forEach(node => { const inaccessibleService = inaccessibleServices.find(srv => srv.key === node.key && srv.version === node.version); if (inaccessibleService) { diff --git a/services/static-webserver/client/source/class/osparc/study/BillingSettings.js b/services/static-webserver/client/source/class/osparc/study/BillingSettings.js index 137c98ae8ea..85a4b83cdcb 100644 --- a/services/static-webserver/client/source/class/osparc/study/BillingSettings.js +++ b/services/static-webserver/client/source/class/osparc/study/BillingSettings.js @@ -192,7 +192,7 @@ qx.Class.define("osparc.study.BillingSettings", { if (myWallets.find(wllt => wllt === wallet)) { // It's my wallet this._createChildControlImpl("debt-explanation").set({ - value: this.tr("Top up the Credit Account:
Purchase additional credits to bring the Credit Account balance back to a positive value.") + value: this.tr("Top up the Credit Account:
Purchase additional credits to restore a positive balance.") }); const buyCreditsButton = this._createChildControlImpl("buy-credits-button"); buyCreditsButton.addListener("execute", () => this.__openBuyCreditsWindow(), this); diff --git a/services/static-webserver/client/source/class/osparc/utils/Utils.js b/services/static-webserver/client/source/class/osparc/utils/Utils.js index 844a8af0eb2..3fa7a943d85 100644 --- a/services/static-webserver/client/source/class/osparc/utils/Utils.js +++ b/services/static-webserver/client/source/class/osparc/utils/Utils.js @@ -600,14 +600,14 @@ qx.Class.define("osparc.utils.Utils", { expirationMessage: function(daysToExpiration) { let msg = ""; if (daysToExpiration === 0) { - msg = qx.locale.Manager.tr("This account will expire Today."); + msg = qx.locale.Manager.tr("Your account will expire today."); } else if (daysToExpiration === 1) { - msg = qx.locale.Manager.tr("This account will expire Tomorrow."); + msg = qx.locale.Manager.tr("Your account will expire tomorrow."); } else { - msg = qx.locale.Manager.tr("This account will expire in ") + daysToExpiration + qx.locale.Manager.tr(" days."); + msg = qx.locale.Manager.tr("Your account will expire in ") + daysToExpiration + qx.locale.Manager.tr(" days."); } msg += "
"; - msg += qx.locale.Manager.tr("Please contact us by email:"); + msg += qx.locale.Manager.tr("Please contact us via email:"); msg += "
"; const supportEmail = osparc.store.VendorInfo.getInstance().getSupportEmail(); msg += supportEmail; diff --git a/services/static-webserver/client/source/class/osparc/widget/PreparingInputs.js b/services/static-webserver/client/source/class/osparc/widget/PreparingInputs.js index 6e050bfca38..511e6229782 100644 --- a/services/static-webserver/client/source/class/osparc/widget/PreparingInputs.js +++ b/services/static-webserver/client/source/class/osparc/widget/PreparingInputs.js @@ -25,7 +25,7 @@ qx.Class.define("osparc.widget.PreparingInputs", { this._setLayout(new qx.ui.layout.VBox(10)); - const text = this.tr("In order to move to this step, we need to prepare some inputs for you.
Here you can check the logs of the progress:"); + const text = this.tr("To proceed, we need to prepare some inputs. You can check the progress logs here:"); const title = new qx.ui.basic.Label(text).set({ font: "text-14", rich: true diff --git a/services/static-webserver/client/source/class/osparc/workbench/WorkbenchUI.js b/services/static-webserver/client/source/class/osparc/workbench/WorkbenchUI.js index f9485a70272..ec3f146fef3 100644 --- a/services/static-webserver/client/source/class/osparc/workbench/WorkbenchUI.js +++ b/services/static-webserver/client/source/class/osparc/workbench/WorkbenchUI.js @@ -202,7 +202,7 @@ qx.Class.define("osparc.workbench.WorkbenchUI", { }, __addStartHint: function() { - this.__startHint = new qx.ui.basic.Label(this.tr("Double click to start adding a node")).set({ + this.__startHint = new qx.ui.basic.Label(this.tr("Double-click to add a node")).set({ font: "workbench-start-hint", textColor: "workbench-start-hint", visibility: "excluded" @@ -2016,7 +2016,7 @@ qx.Class.define("osparc.workbench.WorkbenchUI", { osparc.FlashMessenger.logError(osparc.file.FileDrop.ONE_FILE_ONLY); } } else { - osparc.FlashMessenger.logError(this.tr("Folders are not accepted. You might want to upload a zip file.")); + osparc.FlashMessenger.logError(this.tr("Folders are not accepted. Please upload a zip file instead.")); } } }, diff --git a/services/static-webserver/client/source/translation/en.po b/services/static-webserver/client/source/translation/en.po new file mode 100644 index 00000000000..cdb1069d242 --- /dev/null +++ b/services/static-webserver/client/source/translation/en.po @@ -0,0 +1,4411 @@ +#: osparc/Application.js +msgid "You have been logged out" +msgstr "" + +#: osparc/Application.js +msgid "New Version Released" +msgstr "" + +#: osparc/Application.js +msgid "Privacy Policy" +msgstr "" + +#: osparc/Application.js +msgid "Privacy Policy and License Terms" +msgstr "" + +#: osparc/Application.js +msgid "You have been logged out" +msgstr "" + +#: osparc/desktop/credits/ResourceInTableViewer.js +msgid "Reload" +msgstr "" + +#: osparc/desktop/credits/UsageTable.js +msgid "Service" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Copy to clipboard" +msgstr "" + +#: osparc/utils/Utils.js +msgid "Today" +msgstr "" + +#: osparc/utils/Utils.js +msgid "Yesterday" +msgstr "" + +#: osparc/utils/Utils.js +msgid "Tomorrow" +msgstr "" + +#: osparc/utils/Utils.js +msgid "Your account will expire today." +msgstr "" + +#: osparc/utils/Utils.js +msgid "Your account will expire tomorrow." +msgstr "" + +#: osparc/utils/Utils.js +msgid "Your account will expire in " +msgstr "" + +#: osparc/utils/Utils.js +msgid " days." +msgstr "" + +#: osparc/utils/Utils.js +msgid "Please contact us via email:" +msgstr "" + +#: osparc/utils/Utils.js +msgid "To use all " +msgstr "" + +#: osparc/utils/Utils.js +msgid ", please send us an e-mail to create an account:" +msgstr "" + +#: osparc/utils/Utils.js +msgid "Copied to clipboard" +msgstr "" + +#: osparc/WindowSizeTracker.js +msgid "This app performs better for larger window size: " +msgstr "" + +#: osparc/WindowSizeTracker.js +msgid "Touchscreen devices are not supported yet." +msgstr "" + +#: osparc/auth/Manager.js +msgid "Unsuccessful Login" +msgstr "" + +#: osparc/ErrorPage.js +msgid "Support email" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "Log in" +msgstr "" + +#: osparc/store/Support.js +msgid "Please send us an email to:" +msgstr "" + +#: osparc/product/Utils.js +msgid "projects" +msgstr "" + +#: osparc/product/Utils.js +msgid "project" +msgstr "" + +#: osparc/product/Utils.js +msgid "studies" +msgstr "" + +#: osparc/product/Utils.js +msgid "study" +msgstr "" + +#: osparc/product/Utils.js +msgid "tutorials" +msgstr "" + +#: osparc/product/Utils.js +msgid "tutorial" +msgstr "" + +#: osparc/product/Utils.js +msgid "templates" +msgstr "" + +#: osparc/product/Utils.js +msgid "template" +msgstr "" + +#: osparc/product/Utils.js +msgid "service" +msgstr "" + +#: osparc/product/Utils.js +msgid "services" +msgstr "" + +#: osparc/NewRelease.js +msgid "We are pleased to announce that some new features were deployed for you!" +msgstr "" + +#: osparc/NewRelease.js +msgid "What's new in " +msgstr "" + +#: osparc/CookiePolicy.js +msgid "This website applies cookies to personalize your experience and to make our site easier to navigate. By visiting the site, you agree to the " +msgstr "" + +#: osparc/CookiePolicy.js +msgid "By visiting the site, you agree to the " +msgstr "" + +#: osparc/CookiePolicy.js +msgid "It also uses third party software and libraries. By visiting the site, you agree to the " +msgstr "" + +#: osparc/CookiePolicy.js +msgid "Licensing." +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Accept" +msgstr "" + +#: osparc/data/Resources.js +msgid "You have been logged out. Your cookie might have expired." +msgstr "" + +#: osparc/FlashMessenger.js +msgid "Oops... something went wrong" +msgstr "" + +#: osparc/FlashMessenger.js +msgid "No message" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Do you want to close " +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Make sure you saved your changes to:" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "- current smash file" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "- current notebooks (jupyterlab session will be terminated)" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Close" +msgstr "" + +#: osparc/share/CollaboratorsStudy.js +msgid "Yes" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Do you want to save and close " +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Save & Close" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Platform logger" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Started template creation and added to the background tasks" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while duplicating the study
" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Loading Snapshot" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Closing previous snapshot..." +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "No snapshot found" +msgstr "" + +#: osparc/desktop/MainPageHandler.js +msgid "Study not found" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Loading Iteration" +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Closing..." +msgstr "" + +#: osparc/desktop/MainPage.js +msgid "Iteration not found" +msgstr "" + +#: osparc/MaintenanceTracker.js +msgid "The service is under maintenance. Please check back later" +msgstr "" + +#: osparc/CookieExpirationTracker.js +msgid "Your session has expired" +msgstr "" + +#: osparc/NewUITracker.js +msgid "A new version of the application is now available." +msgstr "" + +#: osparc/NewUITracker.js +msgid "Click the Reload button to get the latest features." +msgstr "" + +#: osparc/ui/switch/ThemeSwitcher.js +msgid "Dark theme" +msgstr "" + +#: osparc/ui/switch/ThemeSwitcher.js +msgid "Light theme" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Ten Simple Rules" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "TSR:" +msgstr "" + +#: osparc/share/NewCollaboratorsManager.js +msgid "Share" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "App mode" +msgstr "" + +#: osparc/service/ServiceListItem.js +msgid "Hits: " +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Unaccessible service(s):" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Service(s) retired, please update" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Service(s) deprecated, please update" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Update available" +msgstr "" + +#: osparc/navigation/PrevNextButtons.js +msgid "Running" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Ran successfully" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Run aborted" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Unsuccessful Run" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "A user" +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid " is closing it..." +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid " is cloning it..." +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid " is exporting it..." +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid " is opening it..." +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid " is using it." +msgstr "" + +#: osparc/dashboard/CardBase.js +msgid "Embargoed
Credits Required" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Empty" +msgstr "" + +#: osparc/product/quickStart/s4llite/Slides.js +msgid "Quick Start" +msgstr "" + +#: osparc/tours/Manager.js +msgid "Guided Tours" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Information" +msgstr "" + +#: osparc/store/Support.js +msgid "To create an issue, you must have an account and be already logged-in." +msgstr "" + +#: osparc/store/Support.js +msgid "Continue" +msgstr "" + +#: osparc/store/Support.js +msgid "Log in in " +msgstr "" + +#: osparc/store/Support.js +msgid "Release Notes" +msgstr "" + +#: osparc/store/Support.js +msgid "Registration is currently only available with an invitation." +msgstr "" + +#: osparc/store/Support.js +msgid "Please request access to " +msgstr "" + +#: osparc/store/Data.js +msgid "Oops... more than 10.000 items to be listed here. Maybe it's time to make a folder :)." +msgstr "" + +#: osparc/store/Data.js +msgid "Unsuccessful file copy" +msgstr "" + +#: osparc/store/Data.js +msgid "Unsuccessful file deletion" +msgstr "" + +#: osparc/notification/RibbonNotification.js +msgid "Maintenance scheduled." +msgstr "" + +#: osparc/notification/RibbonNotification.js +msgid "Please save your work and logout." +msgstr "" + +#: osparc/notification/RibbonNotification.js +msgid "Oops, your window is a bit small!" +msgstr "" + +#: osparc/product/quickStart/Utils.js +msgid "Don't show again" +msgstr "" + +#: osparc/TooSmallDialog.js +msgid "Window size too small" +msgstr "" + +#: osparc/TooSmallDialog.js +msgid "The application can't perform in such a small window." +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "Exit" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "Log out" +msgstr "" + +#: osparc/desktop/credits/Utils.js +msgid "You can't access this information" +msgstr "" + +#: osparc/desktop/credits/Utils.js +msgid "You can't access these operations" +msgstr "" + +#: osparc/share/Collaborators.js +msgid "Any logged-in user with access to the " +msgstr "" + +#: osparc/share/Collaborators.js +msgid " can open it" +msgstr "" + +#: osparc/share/Collaborators.js +msgid "Copy link" +msgstr "" + +#: osparc/share/Collaborators.js +msgid "Anyone on the internet with the link can open this " +msgstr "" + +#: osparc/share/Collaborators.js +msgid "Any logged-in user with the link can copy and open this " +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "Shared with" +msgstr "" + +#: osparc/share/Collaborators.js +msgid "Collaborator can't be removed:" +msgstr "" + +#: osparc/share/Collaborators.js +msgid " needs at least one owner." +msgstr "" + +#: osparc/share/Collaborators.js +msgid "You might want to delete it instead." +msgstr "" + +#: osparc/ui/list/MemberListItem.js +msgid "Leave" +msgstr "" + +#: osparc/auth/core/Utils.js +msgid "Passwords do not match" +msgstr "" + +#: osparc/auth/core/Utils.js +msgid "Invalid phone number. Please [+][country code][phone number]" +msgstr "" + +#: osparc/auth/core/Utils.js +msgid "Invalid email address.
Please register using your university email address" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Cancel" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Submit" +msgstr "" + +#: osparc/form/json/JsonSchemaForm.js +msgid "There was an issue generating the form or one or more schemas failed to validate. Check your Javascript console for more details." +msgstr "" + +#: osparc/auth/LoginWithDecorators.js +msgid "Your account has been created.
You can now use your credentials to login." +msgstr "" + +#: osparc/navigation/NavigationBar.js +msgid "This is TIP.lite, a light version of TIP.
Request access to TIP." +msgstr "" + +#: osparc/product/quickStart/tis/Dashboard.js +msgid "Dashboard" +msgstr "" + +#: osparc/navigation/NavigationBar.js +msgid "Read only" +msgstr "" + +#: osparc/ui/window/Confirmation.js +msgid "Confirmation" +msgstr "" + +#: osparc/snapshots/Loading.js +msgid "Loading " +msgstr "" + +#: osparc/desktop/MainPageHandler.js +msgid "is already open by" +msgstr "" + +#: osparc/desktop/MainPageHandler.js +msgid "another user." +msgstr "" + +#: osparc/desktop/MainPageHandler.js +msgid "We encountered an issue with the" +msgstr "" + +#: osparc/desktop/MainPageHandler.js +msgid "Please contact support." +msgstr "" + +#: osparc/dashboard/Dashboard.js +msgid "SERVICES" +msgstr "" + +#: osparc/dashboard/Dashboard.js +msgid "DATA" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "You do not have writing permissions.
Your changes will not be saved." +msgstr "" + +#: osparc/data/model/IframeHandler.js +msgid "Starting" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "Opening " +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid " is already opened" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "Error opening study" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "The Study contains more than " +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid " Interactive services." +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "Please start them manually." +msgstr "" + +#: osparc/desktop/SlideshowToolbar.js +msgid "Edit App Mode" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "The pipeline is up-to-date. Do you want to re-run it?" +msgstr "" + +#: osparc/widget/PreparingInputs.js +msgid "Re-run" +msgstr "" + +#: osparc/desktop/StartStopButtons.js +msgid "Run" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "Take Snapshot" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Checkpoints" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Iterations" +msgstr "" + +#: osparc/desktop/StudyEditor.js +msgid "Error saving the study" +msgstr "" + +#: osparc/data/PollTask.js +msgid "Unsuccessful polling status" +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "My Workspace" +msgstr "" + +#: osparc/study/Utils.js +msgid "CREATING " +msgstr "" + +#: osparc/service/Utils.js +msgid "Parameter" +msgstr "" + +#: osparc/service/Utils.js +msgid "File" +msgstr "" + +#: osparc/service/Utils.js +msgid "Iterator" +msgstr "" + +#: osparc/service/Utils.js +msgid "Computational" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Interactive" +msgstr "" + +#: osparc/service/Utils.js +msgid "Probe" +msgstr "" + +#: osparc/service/Utils.js +msgid "Service deprecated" +msgstr "" + +#: osparc/service/Utils.js +msgid "Please go back to the dashboard and Update the Service or download its data and upload it to an updated version" +msgstr "" + +#: osparc/service/Utils.js +msgid "Please instantiate an updated version" +msgstr "" + +#: osparc/service/Utils.js +msgid "Service retired" +msgstr "" + +#: osparc/service/Utils.js +msgid "Please download the Service data and upload it to an updated version" +msgstr "" + +#: osparc/service/Utils.js +msgid "Please Stop the Service and then Update it" +msgstr "" + +#: osparc/service/Utils.js +msgid "Please Update the Service" +msgstr "" + +#: osparc/service/Utils.js +msgid "It will be Retired: " +msgstr "" + +#: osparc/ui/basic/NodeStatusUI.js +msgid "Idle" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Waiting for resources" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Unsuccessful" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Ready" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Deprecated" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Retired" +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Starting..." +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Stopping..." +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Pending..." +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Pulling..." +msgstr "" + +#: osparc/service/StatusUI.js +msgid "Connecting..." +msgstr "" + +#: osparc/task/Export.js +msgid "Exporting " +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Details" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Credits required" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid "Open" +msgstr "" + +#: osparc/dashboard/NewPlusButton.js +msgid "New" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Some of your services are outdated. Please update to the latest version for better performance.\\\\\\\\n\\\\\\\\nDo you want to update now?" +msgstr "" + +#: osparc/workbench/ServiceCatalog.js +msgid "Version" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid " Files..." +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Overview" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Billing Settings" +msgstr "" + +#: osparc/node/TierSelectionView.js +msgid "Tiers" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Pipeline View" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Comments" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Sharing" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Classifiers" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Quality" +msgstr "" + +#: osparc/desktop/credits/UsageTable.js +msgid "Tags" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Services Updates" +msgstr "" + +#: osparc/node/BootOptionsView.js +msgid "Boot Options" +msgstr "" + +#: osparc/dashboard/ResourceDetails.js +msgid "Publish " +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "You need to be logged in to create a study" +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "Group" +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "None" +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "Grid view" +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "List view" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Creating " +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Share..." +msgstr "" + +#: osparc/dashboard/ResourceBrowserBase.js +msgid "Tags..." +msgstr "" + +#: osparc/widget/StudyDataManager.js +msgid " Files" +msgstr "" + +#: osparc/tours/Manager.js +msgid "This collection of Guided Tours will show you how to use the platform:" +msgstr "" + +#: osparc/desktop/credits/BuyCreditsStepper.js +msgid "Payment " +msgstr "" + +#: osparc/share/CollaboratorsWorkspace.js +msgid "Workspace successfully shared" +msgstr "" + +#: osparc/share/CollaboratorsWorkspace.js +msgid "Something went wrong while sharing the workspace" +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid " successfully removed" +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Something went wrong while removing " +msgstr "" + +#: osparc/share/CollaboratorsStudy.js +msgid "Demote" +msgstr "" + +#: osparc/share/CollaboratorsTag.js +msgid "Tag successfully shared" +msgstr "" + +#: osparc/share/CollaboratorsTag.js +msgid "Something went wrong while sharing the tag" +msgstr "" + +#: osparc/data/Roles.js +msgid "Restricted Member" +msgstr "" + +#: osparc/data/Roles.js +msgid "Restricted member: no Read access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can access content shared within the Organization" +msgstr "" + +#: osparc/data/Roles.js +msgid "Member" +msgstr "" + +#: osparc/data/Roles.js +msgid "Member: Read access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can see other members" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can share with other members" +msgstr "" + +#: osparc/data/Roles.js +msgid "Manager" +msgstr "" + +#: osparc/data/Roles.js +msgid "Manager: Read/Write access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can Add/Delete members" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can Promote/Demote members" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can Edit Organization details" +msgstr "" + +#: osparc/data/Roles.js +msgid "Administrator" +msgstr "" + +#: osparc/data/Roles.js +msgid "Admin: Read/Write/Delete access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can Delete the Organization" +msgstr "" + +#: osparc/desktop/credits/CheckoutsTable.js +msgid "User" +msgstr "" + +#: osparc/data/Roles.js +msgid "User: Read access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can open it" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Editor" +msgstr "" + +#: osparc/data/Roles.js +msgid "Editor: Read/Write access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can make changes" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can share it" +msgstr "" + +#: osparc/dashboard/SortedByMenuButton.js +msgid "Owner" +msgstr "" + +#: osparc/data/Roles.js +msgid "Owner: Read/Write/Delete access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can delete it" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can use it" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can use the credits" +msgstr "" + +#: osparc/data/Roles.js +msgid "Accountant" +msgstr "" + +#: osparc/data/Roles.js +msgid "Accountant: Read/Write access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can Edit Credit Account details" +msgstr "" + +#: osparc/data/Roles.js +msgid "Viewer" +msgstr "" + +#: osparc/data/Roles.js +msgid "Viewer: Read access" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can inspect the content and open " +msgstr "" + +#: osparc/data/Roles.js +msgid "- can add " +msgstr "" + +#: osparc/data/Roles.js +msgid "- can add folders" +msgstr "" + +#: osparc/data/Roles.js +msgid "- can rename workspace" +msgstr "" + +#: osparc/data/Roles.js +msgid "Roles" +msgstr "" + +#: osparc/share/AddCollaborators.js +msgid "Share with..." +msgstr "" + +#: osparc/share/AddCollaborators.js +msgid "My Organizations..." +msgstr "" + +#: osparc/share/AddCollaborators.js +msgid "Publish for" +msgstr "" + +#: osparc/share/CollaboratorsStudy.js +msgid " successfully shared" +msgstr "" + +#: osparc/share/CollaboratorsStudy.js +msgid "Something went wrong while sharing the " +msgstr "" + +#: osparc/share/CollaboratorsStudy.js +msgid "Sharee permissions" +msgstr "" + +#: osparc/ui/form/FileInput.js +msgid "Select File..." +msgstr "" + +#: osparc/auth/ui/LoginView.js +msgid "Sign in" +msgstr "" + +#: osparc/auth/ui/LoginView.js +msgid "Create Account" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Request Account" +msgstr "" + +#: osparc/auth/ui/LoginView.js +msgid "Forgot Password?" +msgstr "" + +#: osparc/auth/ui/LoginView.js +msgid "Disclaimer" +msgstr "" + +#: osparc/ui/basic/PoweredByOsparc.js +msgid "powered by" +msgstr "" + +#: osparc/auth/ui/LoginView.js +msgid "email or password don't look correct" +msgstr "" + +#: osparc/auth/ui/RegistrationView.js +msgid "Registration" +msgstr "" + +#: osparc/auth/ui/RegistrationView.js +msgid "Type your email" +msgstr "" + +#: osparc/auth/ui/RegistrationView.js +msgid "Type a password" +msgstr "" + +#: osparc/auth/ui/RegistrationView.js +msgid "Retype the password" +msgstr "" + +#: osparc/auth/ui/RegistrationView.js +msgid "Cannot register user" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "First Name" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Last Name" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "University Email" +msgstr "" + +#: osparc/po/Users.js +msgid "Email" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Phone Number" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Company Name" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "University" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Organization" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Research Group/Organization" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Address" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "City" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Postal code" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Country" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Application" +msgstr "" + +#: osparc/pricing/PlanEditor.js +msgid "Description" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "How did you hear about us?" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "I acknowledge that data will be processed in accordance to " +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Request" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "The request is being processed, you will hear from us in the coming hours" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Reload Captcha" +msgstr "" + +#: osparc/auth/ui/RequestAccount.js +msgid "Type the 6 digits:" +msgstr "" + +#: osparc/auth/ui/VerifyPhoneNumberView.js +msgid "Two-Factor Authentication (2FA)" +msgstr "" + +#: osparc/auth/ui/VerifyPhoneNumberView.js +msgid "A text message will be sent to your mobile phone for authentication each time you log in." +msgstr "" + +#: osparc/auth/ui/VerifyPhoneNumberView.js +msgid "Send SMS" +msgstr "" + +#: osparc/auth/ui/VerifyPhoneNumberView.js +msgid "Type the SMS code" +msgstr "" + +#: osparc/file/FileDownloadLink.js +msgid "Validate" +msgstr "" + +#: osparc/auth/ui/VerifyPhoneNumberView.js +msgid "Skip phone registration and send code via email" +msgstr "" + +#: osparc/auth/ui/Login2FAValidationCodeView.js +msgid "Invalid code" +msgstr "" + +#: osparc/auth/ui/ResetPassView.js +msgid "Reset Password" +msgstr "" + +#: osparc/auth/ui/ResetPassRequestView.js +msgid "Type your registration email" +msgstr "" + +#: osparc/auth/ui/ResetPassRequestView.js +msgid "Could not request password reset" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Your new password" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Retype your new password" +msgstr "" + +#: osparc/auth/ui/ResetPassView.js +msgid "Could not reset password" +msgstr "" + +#: osparc/auth/ui/Login2FAValidationCodeView.js +msgid "Type code" +msgstr "" + +#: osparc/auth/ui/Login2FAValidationCodeView.js +msgid "Didn't receive the code? Click to resend" +msgstr "" + +#: osparc/auth/ui/Login2FAValidationCodeView.js +msgid "Via SMS" +msgstr "" + +#: osparc/auth/ui/Login2FAValidationCodeView.js +msgid "Via email" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "Access Full TIP" +msgstr "" + +#: osparc/ui/basic/PoweredByOsparc.js +msgid "powered by " +msgstr "" + +#: osparc/workbench/BaseNodeUI.js +msgid "Information..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Convert to Pipeline" +msgstr "" + +#: osparc/navigation/StudyTitleWOptions.js +msgid "Convert to Standalone" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Restore" +msgstr "" + +#: osparc/navigation/StudyTitleWOptions.js +msgid "Platform Logs..." +msgstr "" + +#: osparc/task/TasksButton.js +msgid "Tasks" +msgstr "" + +#: osparc/jobs/JobsBrowser.js +msgid "Jobs" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "My Account" +msgstr "" + +#: osparc/desktop/credits/BillingCenter.js +msgid "Credit Accounts" +msgstr "" + +#: osparc/desktop/credits/BillingCenter.js +msgid "Payment Methods" +msgstr "" + +#: osparc/desktop/credits/BillingCenter.js +msgid "Payments" +msgstr "" + +#: osparc/desktop/account/MyAccount.js +msgid "Usage" +msgstr "" + +#: osparc/desktop/credits/BillingCenter.js +msgid "Purchases" +msgstr "" + +#: osparc/desktop/credits/BillingCenter.js +msgid "Checkouts" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "username" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Expiration date:" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Please contact us via email:
" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Avoid dots or numbers in text" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Update Profile" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Profile updated" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Unsuccessful profile update" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Privacy" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "For Privacy reasons, you might want to hide some personal data." +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Update Privacy" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Name is required" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Set the Name first" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Privacy updated" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Unsuccessful privacy update" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "If all searchable fields are hidden, you will not be discoverable." +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Two-Factor Authentication" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Set your preferred method to use for two-factor authentication when signing in:" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "You are about to disable the 2FA" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid " The Two-Factor Authentication is one more measure to prevent hackers from accessing your account with an additional layer of security. When you sign in, 2FA helps make sure that your resources and personal information stays private, safe and secure. " +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Yes, disable" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "2FA Method" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Password" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Your current password" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Unsuccessful password reset" +msgstr "" + +#: osparc/desktop/account/ProfilePage.js +msgid "Danger Zone" +msgstr "" + +#: osparc/desktop/account/DeleteAccount.js +msgid "Delete Account" +msgstr "" + +#: osparc/store/Services.js +msgid "Unable to fetch Services" +msgstr "" + +#: osparc/store/Services.js +msgid "Some services are inaccessible:
" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Successfully deleted" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Successfully restored" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "The permissions will be taken from the new workspace." +msgstr "" + +#: osparc/dashboard/MoveResourceTo.js +msgid "Move" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Move to..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Are you sure you want to delete the Folder and all its content?" +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "It will be permanently deleted after " +msgstr "" + +#: osparc/editor/AnnotationEditor.js +msgid "Delete" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Start with an empty study" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "New Plan" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Delete permanently" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "Import" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Import Study" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Move to" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Cancel Selection" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Select " +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Open location" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Rename..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Thumbnail..." +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Edit Thumbnail" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid "Something went wrong while renaming" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while updating the thumbnail" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid " files..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Billing Settings..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Duplicate" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while converting to pipeline" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Export cMIS" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Duplicate process started and added to the background tasks" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while duplicating" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Preparing files" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Exporting process started and added to the background tasks" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Download started" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while exporting the study" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Uploading file" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Importing process started and added to the background tasks" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Importing Study..." +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Processing study" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while fetching the study" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Something went wrong while importing the study" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Are you sure you want to delete" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "will be removed from your list. Collaborators will still have access." +msgstr "" + +#: osparc/form/json/JsonSchemaFormHeader.js +msgid "Remove" +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Duplicating " +msgstr "" + +#: osparc/dashboard/StudyBrowser.js +msgid "Duplication cancelled" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Update all" +msgstr "" + +#: osparc/dashboard/TemplateBrowser.js +msgid "Are you sure you want to update all " +msgstr "" + +#: osparc/node/LifeCycleView.js +msgid "Update" +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid "Are you sure you want to delete " +msgstr "" + +#: osparc/dashboard/TemplateBrowser.js +msgid "Study to Template cancelled" +msgstr "" + +#: osparc/dashboard/TemplateBrowser.js +msgid "Something went wrong while publishing the study
" +msgstr "" + +#: osparc/dashboard/TemplateBrowser.js +msgid "Publishing " +msgstr "" + +#: osparc/dashboard/ServiceBrowser.js +msgid "It seems you don't have access to this product." +msgstr "" + +#: osparc/dashboard/ServiceBrowser.js +msgid "Please contact us:" +msgstr "" + +#: osparc/dashboard/ServiceBrowser.js +msgid "Test with data" +msgstr "" + +#: osparc/dashboard/ServiceBrowser.js +msgid "Submit new service" +msgstr "" + +#: osparc/dashboard/ServiceBrowser.js +msgid "Submit a new service" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "New Node" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Nodes" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Storage" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Study options" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Service options" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Workbench" +msgstr "" + +#: osparc/node/slideshow/NodeView.js +msgid "Logger" +msgstr "" + +#: osparc/desktop/SlideshowToolbar.js +msgid "App Mode" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Start App Mode" +msgstr "" + +#: osparc/pricing/PlanListItem.js +msgid "Edit" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Start" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Annotations" +msgstr "" + +#: osparc/editor/AnnotationNoteCreator.js +msgid "Note" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Rectangle" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Text" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Show" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Create" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Inputs" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Service data" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Outputs" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Options" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Are you sure you want to delete the selected node?" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Delete Node" +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Are you sure you want to delete the selected " +msgstr "" + +#: osparc/desktop/WorkbenchView.js +msgid "Delete Nodes" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Settings" +msgstr "" + +#: osparc/desktop/SlideshowView.js +msgid "Are you sure you want to delete node?" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Show logs only from current node" +msgstr "" + +#: osparc/filter/TextFilter.js +msgid "Filter" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Min log-level" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Toggle auto-scroll" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Copy logs to clipboard" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Copy Selected log to clipboard" +msgstr "" + +#: osparc/widget/logger/LoggerView.js +msgid "Download logs" +msgstr "" + +#: osparc/form/renderer/PropForm.js +msgid "Unlink" +msgstr "" + +#: osparc/navigation/PrevNextButtons.js +msgid "Select File" +msgstr "" + +#: osparc/form/renderer/PropForm.js +msgid "Set new parameter" +msgstr "" + +#: osparc/form/renderer/PropForm.js +msgid "Set existing parameter" +msgstr "" + +#: osparc/form/renderer/PropForm.js +msgid "Required Input" +msgstr "" + +#: osparc/form/renderer/PropForm.js +msgid "Input" +msgstr "" + +#: osparc/widget/NodesSlidesTree.js +msgid "Use the eye icons to display/hide nodes in the App Mode." +msgstr "" + +#: osparc/widget/NodesSlidesTree.js +msgid "Use the up and down arrows to sort them." +msgstr "" + +#: osparc/widget/NodesSlidesTree.js +msgid "You can also display nodes by clicking on them on the Workbench or Nodes list." +msgstr "" + +#: osparc/widget/NodesSlidesTree.js +msgid "Disable" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Save" +msgstr "" + +#: osparc/snapshots/EditSnapshotView.js +msgid "OK" +msgstr "" + +#: osparc/snapshots/IterationsView.js +msgid "Edit Tag" +msgstr "" + +#: osparc/snapshots/SnapshotsView.js +msgid "Edit Snapshot" +msgstr "" + +#: osparc/snapshots/IterationsView.js +msgid "iterations" +msgstr "" + +#: osparc/snapshots/IterationsView.js +msgid "Edit Iteration" +msgstr "" + +#: osparc/desktop/StudyEditorIdlingTracker.js +msgid "Are you still there?" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "Nodes can't be added while the pipeline is running" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "Nodes can't be deleted while the pipeline is running" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "You are not allowed to add nodes" +msgstr "" + +#: osparc/data/model/IframeHandler.js +msgid " is retired" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "Error creating " +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "File couldn't be assigned" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "Parameter couldn't be assigned" +msgstr "" + +#: osparc/data/model/Workbench.js +msgid "Probe couldn't be assigned" +msgstr "" + +#: osparc/data/model/Node.js +msgid " ports auto connected" +msgstr "" + +#: osparc/data/model/Node.js +msgid "Do you really want Stop and Save the current state?" +msgstr "" + +#: osparc/desktop/StartStopButtons.js +msgid "Stop" +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Waiting ..." +msgstr "" + +#: osparc/widget/ProgressSequence.js +msgid "CREATING ..." +msgstr "" + +#: osparc/share/CollaboratorsService.js +msgid "Service successfully shared" +msgstr "" + +#: osparc/share/CollaboratorsService.js +msgid "Something went wrong while sharing the service" +msgstr "" + +#: osparc/share/CollaboratorsService.js +msgid "Something went wrong while removing member" +msgstr "" + +#: osparc/share/CollaboratorsService.js +msgid "Operation not available" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "Cancel upload" +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "Download" +msgstr "" + +#: osparc/node/UpdateResourceLimitsView.js +msgid "Reset" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Provide Link" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "In order to Select a File you have three options:" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "Drop file here" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "Select New File" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "Select Download Link" +msgstr "" + +#: osparc/file/FilePicker.js +msgid "Select File from other " +msgstr "" + +#: osparc/file/FileDownloadLink.js +msgid "Select" +msgstr "" + +#: osparc/task/TaskUI.js +msgid "Are you sure you want to cancel the task?" +msgstr "" + +#: osparc/task/TaskUI.js +msgid "Cancel Task" +msgstr "" + +#: osparc/task/TaskUI.js +msgid "Ignore" +msgstr "" + +#: osparc/dashboard/ResourceUpgradeHelper.js +msgid "Outdated services" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Copy Raw metadata" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Copy Service Id" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "SERVICE ID" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "KEY" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "INTEGRATION VERSION" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "VERSION" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "RELEASE DATE" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "CONTACT" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "AUTHORS" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "ACCESS RIGHTS" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "CLASSIFIERS" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "QUALITY" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Show Description only" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "From all the metadata shown in this view,\\\\\\\\nonly the Description will be shown to Users." +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Edit Icon" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Edit Name" +msgstr "" + +#: osparc/info/ServiceLarge.js +msgid "Edit Version Display" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Edit Description" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "An issue occurred while updating the information." +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Title:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Thumbnail:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Description:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Author:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Access:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Created:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Modified:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Tags:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Quality:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Classifiers:" +msgstr "" + +#: osparc/info/StudyLarge.js +msgid "Location:" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Edit Title" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid "Credit Account" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Buy Credits" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Transfer from this Credit Account" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Last charge:" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "credits" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "You don't have access to the last used Credit Account" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Top up the Credit Account:
Purchase additional credits to restore a positive balance." +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Transfer credits from another Account:
Use this Credit Account to cover the negative balance." +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "A credits transfer will be initiated to cover the negative balance:" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Credits to transfer: " +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "From: " +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "To: " +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Transfer" +msgstr "" + +#: osparc/study/BillingSettings.js +msgid "Credit Account saved" +msgstr "" + +#: osparc/service/PricingUnitsList.js +msgid "No Tiers found" +msgstr "" + +#: osparc/info/CommentsList.js +msgid "0 Comments" +msgstr "" + +#: osparc/info/CommentsList.js +msgid "Load more comments..." +msgstr "" + +#: osparc/info/CommentsList.js +msgid "1 Comment" +msgstr "" + +#: osparc/info/CommentsList.js +msgid " Comments" +msgstr "" + +#: osparc/info/CommentAdd.js +msgid "Add comment" +msgstr "" + +#: osparc/editor/AnnotationNoteCreator.js +msgid "Add" +msgstr "" + +#: osparc/metadata/ClassifiersEditor.js +msgid "RRID:" +msgstr "" + +#: osparc/metadata/ClassifiersEditor.js +msgid "Add Classifier" +msgstr "" + +#: osparc/metadata/ClassifiersEditor.js +msgid "RRID classifier successfully added" +msgstr "" + +#: osparc/metadata/ClassifiersEditor.js +msgid "Classifiers successfully edited" +msgstr "" + +#: osparc/metadata/ClassifiersEditor.js +msgid "Something went wrong while editing classifiers" +msgstr "" + +#: osparc/metadata/ClassifiersViewer.js +msgid "No Classifiers assigned" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Quality Assessment data not found" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "There was an issue validating the metadata." +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Enabled" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Rules" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Conformance Level" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Target" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Conformance Level Target" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "References" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "TSR SCORE" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Not Applicable" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "Edit References" +msgstr "" + +#: osparc/metadata/QualityEditor.js +msgid "There was an issue while updating the Quality Assessment." +msgstr "" + +#: osparc/form/tag/TagManager.js +msgid "Apply Tags" +msgstr "" + +#: osparc/desktop/preferences/pages/TagsPage.js +msgid "New Tag" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "This service is deprecated. Please update." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "This service has been retired. Please update." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Some services are inaccessible. Please contact the service owner:" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Services marked in red are retired and can no longer be used." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "If the Update button is disabled, they might require manual intervention to be updated:" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Open the study" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Click on the retired service, download the data" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Upload the data to a newer version" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Services marked in yellow are deprecated, they will be retired soon." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "They can be updated by pressing the Update button." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "All services are up to date to their latest compatible version." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Click Update to upgrade services to the latest compatible version." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Some services are not up to date." +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Current" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Compatible" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Latest compatible version" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Unknown" +msgstr "" + +#: osparc/metadata/ServicesInStudyUpdate.js +msgid "Up-to-date" +msgstr "" + +#: osparc/metadata/ServicesInStudyBootOpts.js +msgid "Here you can select in which mode the services will be started:" +msgstr "" + +#: osparc/metadata/ServicesInStudyBootOpts.js +msgid "Boot Mode" +msgstr "" + +#: osparc/metadata/ServicesInStudyBootOpts.js +msgid "Select boot type" +msgstr "" + +#: osparc/metadata/ServicesInStudy.js +msgid "Could not retrieve some service information" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "me" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Ten Simple Rules score" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Autostart services" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Disabling this will help opening and closing studies/projects faster" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Add tags" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Meta details" +msgstr "" + +#: osparc/info/StudyUtils.js +msgid "Share with Editors and Organizations" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Quality Assessment" +msgstr "" + +#: osparc/study/SaveAsTemplate.js +msgid "Publish with data" +msgstr "" + +#: osparc/study/SaveAsTemplate.js +msgid "Publish" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid " Options" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid "An issue occurred while selecting Credit Account" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Title" +msgstr "" + +#: osparc/study/StudyOptions.js +msgid "Advanced options" +msgstr "" + +#: osparc/service/ServiceListItem.js +msgid "Number of times you instantiated it" +msgstr "" + +#: osparc/dashboard/GridButtonItem.js +msgid "Viewer only" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Last modified" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Deleted" +msgstr "" + +#: osparc/dashboard/ListButtonItem.js +msgid "Click to filter by this Tag" +msgstr "" + +#: osparc/dashboard/ListButtonItem.js +msgid "More..." +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "All " +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "My " +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "Shared with Me" +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "Shared with Everyone" +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "search" +msgstr "" + +#: osparc/dashboard/SearchBarFilter.js +msgid "Service Type" +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "Recently Deleted" +msgstr "" + +#: osparc/pricing/PlanDetails.js +msgid "Services" +msgstr "" + +#: osparc/dashboard/ResourceFilter.js +msgid "Shared" +msgstr "" + +#: osparc/dashboard/ResourceFilter.js +msgid "All Tags..." +msgstr "" + +#: osparc/dashboard/ResourceFilter.js +msgid "Less Tags..." +msgstr "" + +#: osparc/dashboard/ResourceFilter.js +msgid "Edit Tags..." +msgstr "" + +#: osparc/study/NodePricingUnits.js +msgid "Cannot change Tier" +msgstr "" + +#: osparc/file/TreeFolderView.js +msgid "Calculating Size" +msgstr "" + +#: osparc/file/TreeFolderView.js +msgid "Total size: " +msgstr "" + +#: osparc/product/quickStart/s4l/Welcome.js +msgid "Welcome to Sim4Life" +msgstr "" + +#: osparc/product/quickStart/s4lacad/Welcome.js +msgid "Experience Most Advanced Simulations – All In The Cloud" +msgstr "" + +#: osparc/product/quickStart/s4llite/Welcome.js +msgid "Welcome onboard " +msgstr "" + +#: osparc/product/quickStart/s4lacad/Welcome.js +msgid " Sim4Life is a revolutionary simulation platform, combining computable human phantoms with the most powerful physics solvers and the most advanced tissue models, for directly analyzing biological real-world phenomena and complex technical devices in a validated biological and anatomical environment.

In order to facilitate the introduction to the platform, we have some Guided Tours that can be found under the User Menu.

For more specific technical information, please refer to the Manuals on the Navigation Bar. " +msgstr "" + +#: osparc/product/quickStart/s4lacad/Welcome.js +msgid "Welcome to Sim4Life Science" +msgstr "" + +#: osparc/tours/Step.js +msgid "Skip" +msgstr "" + +#: osparc/navigation/PrevNextButtons.js +msgid "Next" +msgstr "" + +#: osparc/tours/Step.js +msgid "To Tours" +msgstr "" + +#: osparc/tours/Step.js +msgid "Step: " +msgstr "" + +#: osparc/admin/Announcements.js +msgid "End" +msgstr "" + +#: osparc/desktop/credits/BuyCreditsForm.js +msgid "A one-off, non recurring payment." +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Pay with" +msgstr "" + +#: osparc/desktop/credits/BuyCreditsForm.js +msgid "Enter card details in the next step..." +msgstr "" + +#: osparc/share/NewCollaboratorsManager.js +msgid "Share with" +msgstr "" + +#: osparc/share/NewCollaboratorsManager.js +msgid "Select users or organizations from the list below." +msgstr "" + +#: osparc/share/NewCollaboratorsManager.js +msgid "Select users from the list below." +msgstr "" + +#: osparc/share/NewCollaboratorsManager.js +msgid "
Search them if they aren't listed." +msgstr "" + +#: osparc/po/Users.js +msgid "Search" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "Organizations" +msgstr "" + +#: osparc/desktop/organizations/OrganizationsWindow.js +msgid "Organization details" +msgstr "" + +#: osparc/share/ShareePermissions.js +msgid "The following users/groups will not be able to open the shared study, because they don't have access to some services. Please contact the service owner(s) to give permission." +msgstr "" + +#: osparc/utils/Validators.js +msgid "Color must be in hexadecimal form" +msgstr "" + +#: osparc/utils/Validators.js +msgid "Format is invalid" +msgstr "" + +#: osparc/widget/IntlTelInput.js +msgid "Invalid number" +msgstr "" + +#: osparc/widget/IntlTelInput.js +msgid "Invalid country code" +msgstr "" + +#: osparc/widget/IntlTelInput.js +msgid "Number too short" +msgstr "" + +#: osparc/widget/IntlTelInput.js +msgid "Number too long" +msgstr "" + +#: osparc/product/AboutProduct.js +msgid "About " +msgstr "" + +#: osparc/About.js +msgid " is an online-accessible, cloud-based, and collaborative computational modeling platform that was developed under the Common Fund’s Stimulating Peripheral Activity to Relieve Conditions (SPARC) program to ensure sustainable, reproducible, and FAIR (findable, accessible, interoperable, reusable) computational modeling in the field of bioelectronic medicine – from neural interfaces to peripheral nerve recruitment and the resulting effects on organ function.

For more information about SPARC and the services offered, visit the " +msgstr "" + +#: osparc/About.js +msgid "The platform is built upon a number of open-source resources - we can't do it all alone! Some of the technologies that we leverage include:" +msgstr "" + +#: osparc/About.js +msgid "Front-end" +msgstr "" + +#: osparc/About.js +msgid "Back-end" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Raw metadata" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Author" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Creation Date" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Last Modified" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Access Rights" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Service ID" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Service Key" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Service Integration Version" +msgstr "" + +#: osparc/info/MergedLarge.js +msgid "Service Version" +msgstr "" + +#: osparc/desktop/account/MyAccount.js +msgid "Profile" +msgstr "" + +#: osparc/desktop/account/MyAccount.js +msgid "Confirmations" +msgstr "" + +#: osparc/desktop/account/MyAccount.js +msgid "API Keys/Tokens" +msgstr "" + +#: osparc/desktop/account/MyAccount.js +msgid "Create/Edit Tags" +msgstr "" + +#: osparc/admin/AdminCenterWindow.js +msgid "Admin Center" +msgstr "" + +#: osparc/po/POCenterWindow.js +msgid "PO Center" +msgstr "" + +#: osparc/tester/TesterCenterWindow.js +msgid "Tester Center" +msgstr "" + +#: osparc/desktop/credits/BillingCenterWindow.js +msgid "Billing Center" +msgstr "" + +#: osparc/vipMarket/MarketWindow.js +msgid "The Shop" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "About oSPARC" +msgstr "" + +#: osparc/product/AboutProduct.js +msgid "About Product" +msgstr "" + +#: osparc/navigation/UserMenu.js +msgid "License" +msgstr "" + +#: osparc/desktop/credits/CreditsIndicator.js +msgid " credits" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethods.js +msgid "Credit cards used for payments in your personal Credit Account" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Add Payment Method" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethods.js +msgid "Fetching Payment Methods" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethods.js +msgid "The window was closed. Try again and follow the instructions inside the opened window." +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethods.js +msgid "No Payment Methods found" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethods.js +msgid "Could not retrieve your saved payment methods. Please try again later." +msgstr "" + +#: osparc/desktop/credits/Transactions.js +msgid "Top-up and refunds in US Dollars associated to your personal account show up here." +msgstr "" + +#: osparc/desktop/account/DeleteAccount.js +msgid "Your email" +msgstr "" + +#: osparc/desktop/account/DeleteAccount.js +msgid "Your password" +msgstr "" + +#: osparc/workbench/DiskUsageIndicator.js +msgid "Disk usage" +msgstr "" + +#: osparc/workbench/DiskUsageIndicator.js +msgid "Data storage: " +msgstr "" + +#: osparc/workbench/DiskUsageIndicator.js +msgid "I/O storage: " +msgstr "" + +#: osparc/dashboard/WorkspaceButtonNew.js +msgid "New Workspace" +msgstr "" + +#: osparc/dashboard/FolderButtonNew.js +msgid "New folder" +msgstr "" + +#: osparc/dashboard/NewPlusMenu.js +msgid "New Folder" +msgstr "" + +#: osparc/dashboard/MoveResourceTo.js +msgid "Current location:" +msgstr "" + +#: osparc/dashboard/MoveResourceTo.js +msgid "- Workspace: " +msgstr "" + +#: osparc/dashboard/MoveResourceTo.js +msgid "- Folder: " +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "Delete all" +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "All items will be permanently deleted" +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "Shared Workspaces" +msgstr "" + +#: osparc/dashboard/StudyBrowserHeader.js +msgid "Search results" +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Edit..." +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Edit Workspace" +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Share Workspace" +msgstr "" + +#: osparc/vipMarket/SortModelsButtons.js +msgid "Sort" +msgstr "" + +#: osparc/pricing/PlanEditor.js +msgid "Name" +msgstr "" + +#: osparc/dashboard/SortedByMenuButton.js +msgid "Created" +msgstr "" + +#: osparc/dashboard/SortedByMenuButton.js +msgid "Modified" +msgstr "" + +#: osparc/study/Import.js +msgid "Max file size 10GB" +msgstr "" + +#: osparc/workbench/BaseNodeUI.js +msgid "Rename" +msgstr "" + +#: osparc/widget/Renamer.js +msgid "Type text" +msgstr "" + +#: osparc/editor/ThumbnailEditor.js +msgid "Error checking link" +msgstr "" + +#: osparc/editor/ThumbnailEditor.js +msgid "url" +msgstr "" + +#: osparc/editor/ThumbnailEditor.js +msgid "or pick one from the list below:" +msgstr "" + +#: osparc/task/Import.js +msgid "Importing Study" +msgstr "" + +#: osparc/task/Duplicate.js +msgid "Duplicating:" +msgstr "" + +#: osparc/task/ToTemplate.js +msgid "Publishing:" +msgstr "" + +#: osparc/service/SortServicesButtons.js +msgid "Hits" +msgstr "" + +#: osparc/service/SortServicesButtons.js +msgid "Name Asc" +msgstr "" + +#: osparc/service/SortServicesButtons.js +msgid "Name Desc" +msgstr "" + +#: osparc/widget/CollapsibleViewLight.js +msgid "Expand" +msgstr "" + +#: osparc/widget/CollapsibleViewLight.js +msgid "Collapse" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "Study Information" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "DESCRIPTION" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "More Info" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "AUTHOR" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "CREATED" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "MODIFIED" +msgstr "" + +#: osparc/info/StudyMedium.js +msgid "TAGS" +msgstr "" + +#: osparc/widget/NodeOptions.js +msgid "To proceed with the following actions, the service needs to be Stopped." +msgstr "" + +#: osparc/desktop/SlideshowToolbar.js +msgid "Save App Mode" +msgstr "" + +#: osparc/desktop/SlideshowToolbar.js +msgid "Stop App Mode" +msgstr "" + +#: osparc/navigation/PrevNextButtons.js +msgid "Previous" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Service Information" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Instructions" +msgstr "" + +#: osparc/node/slideshow/BaseNodeView.js +msgid "Preparing Inputs" +msgstr "" + +#: osparc/workbench/ServiceCatalog.js +msgid "Service catalog" +msgstr "" + +#: osparc/form/renderer/PropFormBase.js +msgid "Required input: without it, the service will not start/run." +msgstr "" + +#: osparc/widget/NodeSlideTreeItem.js +msgid "Edit Instructions" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Progress" +msgstr "" + +#: osparc/workbench/NodeUI.js +msgid "Convert to Iterator" +msgstr "" + +#: osparc/workbench/NodeUI.js +msgid "Convert to Parameter" +msgstr "" + +#: osparc/widget/NodeTreeItem.js +msgid "Remove Marker" +msgstr "" + +#: osparc/widget/NodeTreeItem.js +msgid "Add Marker" +msgstr "" + +#: osparc/data/model/IframeHandler.js +msgid "There was an issue starting" +msgstr "" + +#: osparc/widget/NodeOutputs.js +msgid "Connects a Probe to this output" +msgstr "" + +#: osparc/file/FileDownloadLink.js +msgid "An issue occurred while checking link" +msgstr "" + +#: osparc/file/FileDownloadLink.js +msgid "Type a Link" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Upload file" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Drop file from File Explorer" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Drop file from tree" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "or" +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Only one file can be uploaded at a time." +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Please compress all files into a single zip file." +msgstr "" + +#: osparc/file/FileDrop.js +msgid "Drop me" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Folders are not accepted. Please upload a zip file instead." +msgstr "" + +#: osparc/file/FolderViewer.js +msgid "Select folder" +msgstr "" + +#: osparc/file/FolderViewer.js +msgid "Multiselect" +msgstr "" + +#: osparc/editor/TextEditor.js +msgid "Write" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Execute" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Public" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Limit" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Runtime check:
The service can consume a maximum of 'limit' resources - if it attempts to use more resources than this limit, it will be stopped" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Resources" +msgstr "" + +#: osparc/node/UpdateResourceLimitsView.js +msgid "Resource Limits" +msgstr "" + +#: osparc/info/ServiceUtils.js +msgid "Share with Collaborators and Organizations" +msgstr "" + +#: osparc/editor/MarkdownEditor.js +msgid "Markdown supported" +msgstr "" + +#: osparc/editor/HtmlEditor.js +msgid "Preview" +msgstr "" + +#: osparc/form/tag/TagItem.js +msgid "Share Tag" +msgstr "" + +#: osparc/form/tag/TagItem.js +msgid "Color" +msgstr "" + +#: osparc/metadata/ServicesInStudy.js +msgid "Something went wrong while updating the service" +msgstr "" + +#: osparc/metadata/ServicesInStudy.js +msgid "The Study is empty" +msgstr "" + +#: osparc/metadata/ServicesInStudy.js +msgid "Could not retrieve service information" +msgstr "" + +#: osparc/share/PublishTemplate.js +msgid "Make the " +msgstr "" + +#: osparc/share/PublishTemplate.js +msgid " also accessible to:" +msgstr "" + +#: osparc/share/PublishTemplate.js +msgid "Publish for..." +msgstr "" + +#: osparc/dashboard/GroupedCardContainer.js +msgid "Show less" +msgstr "" + +#: osparc/dashboard/GroupedCardContainer.js +msgid "Show all" +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Are you sure you want to delete the Workspace and all its content?" +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "All the content of the workspace will be deleted." +msgstr "" + +#: osparc/dashboard/WorkspaceButtonItem.js +msgid "Delete Workspace" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Edit Folder" +msgstr "" + +#: osparc/dashboard/FolderButtonItem.js +msgid "Delete Folder" +msgstr "" + +#: osparc/product/quickStart/s4llite/Welcome.js +msgid "Quick Start Guide" +msgstr "" + +#: osparc/product/quickStart/tis/Welcome.js +msgid " This quick tutorial gives a basic overview of how the TI Planning Tool works and how to navigate through the interface.
We will focus on two main aspects, how to:
- Use the platform
- Get started with a New Plan
" +msgstr "" + +#: osparc/product/quickStart/tis/Dashboard.js +msgid " The Dashboard is your private hub which contains all of your Plans as well as Plans that have been shared with you. From the Dashboard you are able to open your Plan or create a New Plan from scratch. " +msgstr "" + +#: osparc/product/quickStart/tis/Dashboard.js +msgid " 1) New Plan: by clicking on this card a new study will be created and open. The planning process will be presented in three successive steps that will be described more in detail in the following steps. " +msgstr "" + +#: osparc/product/quickStart/tis/Dashboard.js +msgid " 2) The other cards are TI Plans that were already created by you or shared with you. You can reopen them to do further analysis or by clicking three dots, on the top right corner, you can share, delete or check the details and metadata. " +msgstr "" + +#: osparc/product/quickStart/tis/ElectrodeSelector.js +msgid "Electrode Selector" +msgstr "" + +#: osparc/product/quickStart/tis/ElectrodeSelector.js +msgid " After pressing New Plan, three panels will be shown. " +msgstr "" + +#: osparc/product/quickStart/tis/ElectrodeSelector.js +msgid " In a first step, the relevant species, stimulation target, electrode shapes, electrode dimensions and potential electrode locations (currently required to narrow down the huge exposure configuration search space) are selected. " +msgstr "" + +#: osparc/product/quickStart/tis/ElectrodeSelector.js +msgid " After finishing the set up, the big button on the top right will turn blue and by clicking on it you will submit the configuration. " +msgstr "" + +#: osparc/product/quickStart/tis/ElectrodeSelector.js +msgid " Now the Arrow that says 'Next' can be pushed and the optimization will immediately start. " +msgstr "" + +#: osparc/product/quickStart/tis/PostPro.js +msgid "Post Processing" +msgstr "" + +#: osparc/product/quickStart/tis/PostPro.js +msgid " Based on extensive sweeping/optimization, a series of highly performing exposure parameters are proposed for the user to interactively explore, using predefined quantification metrics and visualizations. Identified conditions-of-interest can be documented and added to a report. " +msgstr "" + +#: osparc/product/quickStart/tis/PostPro.js +msgid " These metrics are reported in the Post Processing analysis environment for each electrode pair in the combination in a sorted tabular form that can be used to inspect the stimulation performances. By clicking on each pair, slice views of the maximum amplitude modulation (MAP) within the head are produced.
Pressing the `Load` button on the right, the selected configuration will be loaded. " +msgstr "" + +#: osparc/product/quickStart/tis/PostPro.js +msgid " Alternatively, slice views of the maximum interferential E-field can also be visualized and synchronous with the MAP slices to assess safety-related aspects (e.g., field intensity in proximity of the electrodes). These maps can be edited, thresholded, and saved offline for further inspection and analysis.
An isosurface of the TI stimulation distribution for the selected configuration can also be visualized within the head anatomy for inspection. " +msgstr "" + +#: osparc/product/quickStart/tis/PostPro.js +msgid " At the end of the optimization procedure, you can automatically generate a report.
It includes a summary of all the performance metrics calculated for each electrode pair combination, and a detailed performance report of the optimized electrode configuration. The report includes electrode placement, current intensities, performance metrics, TI and maximum high-frequency field distributions, cumulative dose histograms and all the graphs generated in the post-pro analysis tab. " +msgstr "" + +#: osparc/product/quickStart/tis/S4LPostPro.js +msgid "Not available in" +msgstr "" + +#: osparc/product/quickStart/tis/S4LPostPro.js +msgid "Sim4Life Post Processing" +msgstr "" + +#: osparc/product/quickStart/tis/S4LPostPro.js +msgid " Finally, and optionally, exposure conditions-of-interest can be visualized and analyzed freely, using the web-version of the Sim4Life (ZMT Zurich MedTech AG) computational life sciences platform. " +msgstr "" + +#: osparc/product/quickStart/tis/MoreInformation.js +msgid "For more information:" +msgstr "" + +#: osparc/product/quickStart/s4llite/Welcome.js +msgid " This quick user’s guide gives a short introduction to Sim4Life.lite. We will show:
- how to get started with a new project,
- how to get started from an existing tutorial project
- how to open Sim4Life desktop simulation projects in Sim4Life.lite,
- Sim4Life.lite features, limitations and user interface

For more specific technical information, please refer to the Dashboard Manual and the Sim4Life.lite Manual. " +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid "Dashboard - Projects & Tutorials" +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid " The Dashboard is the place where Projects and Tutorials can be accessed and organized. " +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid " 1) Start Sim4Life.lite: Click the + Start Sim4Life.lite button to create a new project. This will start the user interface of Sim4Life.lite. " +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid " 2) Other cards: Each card represents an existing project (own projects, or projects shared by other users) that can be accessed and managed. Click on the card to open the project. Click the “three dots” in the upper right corner of the card to perform operations such as rename, share, delete. " +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid " 3) TUTORIALS: A set of pre-built read-only tutorial projects with results is available to all Sim4Life.lite users. When a tutorial is selected, a copy is automatically created and added to the user’s Projects tab. This new copy is editable and can be shared. " +msgstr "" + +#: osparc/product/quickStart/s4llite/Dashboard.js +msgid " 4) To open an existing desktop project in Sim4Life.lite: - Click the + Start Sim4Life.lite button to create a new project.
- Click the menu and select “File Browser…”.
- Click “Upload File” for the .smash project and select the file from your desktop. Repeat the same step, but this time select “Upload Folder” and then select the result folder from your desktop. Close the window
- Click the Menu again and click “Open” to select the file you just uploaded.
" +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteSpecs.js +msgid "Sim4Life.lite: Features and Limitations" +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteSpecs.js +msgid " Sim4Life.lite is a powerful web-based simulation platform that allows you to model and analyze real-world phenomena and to design complex technical devices in a validated environment. Sim4Life.lite has been created specifically for students to facilitate their understanding of computational modeling and simulations for various topics, ranging from wireless communication to medical applications. The access to Sim4Life.lite is available free of charge to students enrolled at registered universities. " +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteSpecs.js +msgid " Sim4Life.lite offers
- Framework (GUI, Modeling, Postprocessing)
- 3D modeling environment (based on the ACIS toolkit) and CAD translators
- Postprocessing and visualization of the simulation results (2D and 3D viewers, 2D planar slice, volume rendering, streamlines, surface fields on arbitrary 3D structures, radiation and far-field data)
- No restrictions on number of modeling objects
- Solvers & Tissue Models:
 - P-EM-FDTD: Electromagnetics Full-Wave Solver
 - P-EM-QS: Quasi-Static Electromagnetics Solver
 - P-Thermal: Thermodynamic Solver
 - P-Acoustics: Acoustics Solver
 - T-Neuro: Neuronal Tissue Models
- Computational anatomical model Yoon-sun, the first Korean model of the IT’IS Virtual Population
- Material database
- Python and Jupyter Notebook scripting " +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteSpecs.js +msgid " Limitations
The following limitations apply:
- Grid size of each simulation is limited to a maximum of 20 million grid cells
- High-Performance Computing is not supported:
 - GPU acceleration is not available
 - MPI multicore acceleration is not available
- 3rd-party tools are not available (e.g., MUSAIK, SYSSIM, IMAnalytics, etc…)
- Additional ViP models cannot be added
- 30 minutes idle time before logout
- Hardware resource limits
 - 3 CPUs
 - 3 GB of GPU RAM
 - 5 GB disk space
 - 16 GB RAM
" +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteUI.js +msgid "Sim4Life.lite" +msgstr "" + +#: osparc/product/quickStart/s4llite/S4LLiteUI.js +msgid " To check the Sim4Life.lite manual, please open a project and access the documentation via Help in the menu as shown below. Enjoy! " +msgstr "" + +#: osparc/desktop/credits/BuyCreditsInput.js +msgid "Credit Price" +msgstr "" + +#: osparc/desktop/credits/BuyCreditsInput.js +msgid "Credit Amount" +msgstr "" + +#: osparc/desktop/credits/BuyCreditsInput.js +msgid "Total" +msgstr "" + +#: osparc/filter/SearchingCollaborators.js +msgid "Searching..." +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid " An organization is a group of users who can share " +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid " and other resources.
Here you can see the list of organizations you belong to, create new organizations, or manage the membership by setting up the access rights of each member in the organization if you are a manager or administrator." +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid "New Organization" +msgstr "" + +#: osparc/desktop/organizations/OrganizationDetails.js +msgid "Organization Details Editor" +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid "Delete Organization" +msgstr "" + +#: osparc/desktop/organizations/OrganizationsList.js +msgid "Something went wrong while deleting " +msgstr "" + +#: osparc/pricing/PlanEditor.js +msgid " successfully created" +msgstr "" + +#: osparc/pricing/PlanEditor.js +msgid "Something went wrong while creating " +msgstr "" + +#: osparc/desktop/wallets/WalletDetails.js +msgid " successfully edited" +msgstr "" + +#: osparc/desktop/wallets/WalletDetails.js +msgid "Something went wrong while editing " +msgstr "" + +#: osparc/desktop/organizations/OrganizationDetails.js +msgid "Return to Organizations list" +msgstr "" + +#: osparc/desktop/wallets/WalletDetails.js +msgid "Members" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Job Id" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Solver" +msgstr "" + +#: osparc/desktop/credits/TransactionsTableModel.js +msgid "Status" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Submitted" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Started" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Info" +msgstr "" + +#: osparc/jobs/JobsTable.js +msgid "Instance" +msgstr "" + +#: osparc/notification/NotificationUI.js +msgid "You don't have access anymore" +msgstr "" + +#: osparc/notification/NotificationUI.js +msgid "Do you want to make it the default Credit Account?" +msgstr "" + +#: osparc/notification/NotificationUI.js +msgid "Default Credit Account" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Credits Indicator" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Show indicator" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Show warning when credits below" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Automatic Shutdown of Idle Instances" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Enter 0 to disable this function" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Idle time before closing (in minutes)" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Job Concurrency" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Maximum number of concurrent jobs" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Low Disk Space Threshold" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Set the warning Threshold for Low Disk Space availability" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Threshold (in GB)" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Help us improve Sim4Life user experience" +msgstr "" + +#: osparc/desktop/preferences/pages/GeneralPage.js +msgid "Share usage data" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Ask for confirmation for the following actions:" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Go back to the Dashboard" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Delete a " +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Warning: deleting a " +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid " cannot be undone" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Understood" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Delete a Node" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Warning: deleting a node cannot be undone" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Stop Node" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Snap Node to Grid" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "This is a list of experimental preferences" +msgstr "" + +#: osparc/desktop/preferences/pages/ConfirmationsPage.js +msgid "Connect ports automatically" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "API Keys" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "List API keys associated to your account." +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "New API Key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Cannot create API Key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Do you want to delete the API key?" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Delete API key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Cannot delete API Key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "API Tokens for External Services" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Provide the API tokens needed to access external services." +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Current Tokens" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Supported services" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Are you sure you want to delete this token?" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Delete Token" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Enter your token key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Key" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Enter your token secret" +msgstr "" + +#: osparc/desktop/preferences/pages/TokensPage.js +msgid "Secret" +msgstr "" + +#: osparc/desktop/preferences/pages/TagsPage.js +msgid " Tags help you organize the " +msgstr "" + +#: osparc/desktop/preferences/pages/TagsPage.js +msgid " in the Dashboard by categorizing topics, making it easier to search and filter. Once the tags are created, they can be assigned to the " +msgstr "" + +#: osparc/desktop/preferences/pages/TagsPage.js +msgid " via 'More options...' on the " +msgstr "" + +#: osparc/desktop/preferences/pages/TagsPage.js +msgid " cards." +msgstr "" + +#: osparc/desktop/credits/CreditsPerService.js +msgid "No usage records found" +msgstr "" + +#: osparc/product/AboutProduct.js +msgid "Information is unavailable" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "Personal" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "No personal Credit Account found" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "Shared with me" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "No shared Credit Accounts found" +msgstr "" + +#: osparc/desktop/wallets/WalletDetails.js +msgid "Credit Account Details Editor" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "Something went wrong while updating the Credit Account" +msgstr "" + +#: osparc/desktop/wallets/WalletsList.js +msgid "Currently in use" +msgstr "" + +#: osparc/desktop/wallets/WalletDetails.js +msgid "Return to Credit Accounts list" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodListItem.js +msgid "Are you sure you want to delete this Payment Method?" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodListItem.js +msgid "Delete Payment Method" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodDetails.js +msgid "Payment Method details" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodDetails.js +msgid "Card Holder name" +msgstr "" + +#: osparc/filter/NodeTypeFilter.js +msgid "Type" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodDetails.js +msgid "Number" +msgstr "" + +#: osparc/desktop/paymentMethods/PaymentMethodDetails.js +msgid "Expiration date" +msgstr "" + +#: osparc/desktop/credits/ResourceInTableViewer.js +msgid "Export" +msgstr "" + +#: osparc/desktop/credits/UsageTable.js +msgid "Node" +msgstr "" + +#: osparc/desktop/credits/CheckoutsTable.js +msgid "Duration" +msgstr "" + +#: osparc/study/PricingUnitLicense.js +msgid "Credits" +msgstr "" + +#: osparc/desktop/credits/PurchasesTable.js +msgid "PurchaseId" +msgstr "" + +#: osparc/desktop/credits/CheckoutsTable.js +msgid "ItemId" +msgstr "" + +#: osparc/desktop/credits/CheckoutsTable.js +msgid "Seats" +msgstr "" + +#: osparc/desktop/credits/CheckoutsTable.js +msgid "CheckoutId" +msgstr "" + +#: osparc/vipMarket/Market.js +msgid "My Models" +msgstr "" + +#: osparc/editor/OrganizationEditor.js +msgid "Thumbnail" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Double-click to add a node" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "INPUTS" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "OUTPUTS" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Pick the position" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Draw a rectangle" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Drop here" +msgstr "" + +#: osparc/workbench/WorkbenchUI.js +msgid "Draw a rectangle first" +msgstr "" + +#: osparc/widget/NodeTreeItem.js +msgid "Full Screen" +msgstr "" + +#: osparc/node/LifeCycleView.js +msgid "Update Service" +msgstr "" + +#: osparc/node/UpdateResourceLimitsView.js +msgid "Limits have been successfully updated" +msgstr "" + +#: osparc/node/UpdateResourceLimitsView.js +msgid "Something went wrong while updating the limits" +msgstr "" + +#: osparc/navigation/BreadcrumbsSlideshow.js +msgid "Pipeline is empty" +msgstr "" + +#: osparc/navigation/BreadcrumbsSlideshow.js +msgid "No visible nodes. Enable some by adjusting the app mode." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Please wait, this process may take a few minutes ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "LOADING ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Provisioning resources ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Setting up system software ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Retrieving your output data ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Retrieving your work ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Installing services ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Starting services ..." +msgstr "" + +#: osparc/data/model/NodeProgressSequence.js +msgid "Retrieving your input data ..." +msgstr "" + +#: osparc/ui/basic/NodeStatusUI.js +msgid "Select a file" +msgstr "" + +#: osparc/ui/basic/NodeStatusUI.js +msgid "Uploading..." +msgstr "" + +#: osparc/widget/PreparingInputs.js +msgid "To proceed, we need to prepare some inputs. You can check the progress logs here:" +msgstr "" + +#: osparc/widget/PreparingInputs.js +msgid "Run all" +msgstr "" + +#: osparc/widget/PreparingInputs.js +msgid "Logs" +msgstr "" + +#: osparc/ui/form/ContentSchemaHelper.js +msgid "Minimum items: " +msgstr "" + +#: osparc/ui/form/ContentSchemaHelper.js +msgid "Maximum items: " +msgstr "" + +#: osparc/ui/form/ContentSchemaHelper.js +msgid "Out of range" +msgstr "" + +#: osparc/ui/form/ContentSchemaHelper.js +msgid "Minimum value: " +msgstr "" + +#: osparc/ui/form/ContentSchemaHelper.js +msgid "Maximum value: " +msgstr "" + +#: osparc/file/FolderContent.js +msgid "Date Modified" +msgstr "" + +#: osparc/file/FolderContent.js +msgid "Size" +msgstr "" + +#: osparc/file/FolderContent.js +msgid "Id" +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "This action cannot be undone." +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "All contents within the folders will be deleted." +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "Do you want to proceed?" +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "Items successfully deleted" +msgstr "" + +#: osparc/file/FileLabelWithActions.js +msgid "Externally managed items cannot be deleted" +msgstr "" + +#: osparc/editor/HtmlEditor.js +msgid "Supports HTML" +msgstr "" + +#: osparc/study/PricingUnitTier.js +msgid "Credits/h" +msgstr "" + +#: osparc/study/PricingUnitTier.js +msgid "EC2" +msgstr "" + +#: osparc/ui/list/OrganizationListItem.js +msgid " members" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Edit details..." +msgstr "" + +#: osparc/desktop/wallets/MembersList.js +msgid "Add Members..." +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "You can add new members and assign roles." +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "You cannot add new members to this Organization. Please contact an Administrator or Manager." +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid " successfully added" +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Something went wrong while adding the user" +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Something went wrong while promoting to " +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Something went wrong while demoting to " +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Are you sure you want to leave?" +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "If you leave, the page will reload." +msgstr "" + +#: osparc/desktop/organizations/MembersList.js +msgid "Leave Organization" +msgstr "" + +#: osparc/desktop/organizations/TemplatesList.js +msgid "This is the list of " +msgstr "" + +#: osparc/desktop/organizations/TemplatesList.js +msgid " shared with this Organization" +msgstr "" + +#: osparc/desktop/organizations/ServicesList.js +msgid "This is the list of services shared with this Organization" +msgstr "" + +#: osparc/jobs/JobInfo.js +msgid "Job Info" +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Generate API Key" +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Key names must be unique." +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Key Name" +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Expiration Date" +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Select a future date" +msgstr "" + +#: osparc/desktop/preferences/window/CreateAPIKey.js +msgid "Confirm" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "API Key" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "For your security, store your access keys safely. You will not be able to access them again after closing this window." +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "Key:" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "Secret:" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "Base url:" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "API Secret" +msgstr "" + +#: osparc/desktop/preferences/window/ShowAPIKey.js +msgid "Base URL" +msgstr "" + +#: osparc/admin/AdminCenter.js +msgid "Pricing Plans" +msgstr "" + +#: osparc/admin/AdminCenter.js +msgid "Maintenance" +msgstr "" + +#: osparc/admin/AdminCenter.js +msgid "Announcements" +msgstr "" + +#: osparc/po/POCenter.js +msgid "Users" +msgstr "" + +#: osparc/po/POCenter.js +msgid "Pre-Registration" +msgstr "" + +#: osparc/po/POCenter.js +msgid "Invitations" +msgstr "" + +#: osparc/po/POCenter.js +msgid "Product Info" +msgstr "" + +#: osparc/po/POCenter.js +msgid "Message Templates" +msgstr "" + +#: osparc/tester/TesterCenter.js +msgid "Socket Messages" +msgstr "" + +#: osparc/tester/TesterCenter.js +msgid "Console Errors" +msgstr "" + +#: osparc/tester/Statics.js +msgid "Statics" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Something went wrong while updating the state" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Auto-recharge" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Auto-recharge: ON" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Auto-recharge: OFF" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "ON" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "OFF" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Credit Account enabled" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Credit Account blocked" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Currently being used" +msgstr "" + +#: osparc/desktop/wallets/WalletListItem.js +msgid "Switch to this Credit Account" +msgstr "" + +#: osparc/desktop/wallets/MembersList.js +msgid "Only Accountants of an Organization can share a wallet with other users." +msgstr "" + +#: osparc/vipMarket/SortModelsButtons.js +msgid "Date" +msgstr "" + +#: osparc/desktop/credits/TransactionsTableModel.js +msgid "Price USD" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Comment" +msgstr "" + +#: osparc/desktop/credits/TransactionsTableModel.js +msgid "Invoice" +msgstr "" + +#: osparc/vipMarket/VipMarket.js +msgid "Loading" +msgstr "" + +#: osparc/vipMarket/VipMarket.js +msgid "Cannot purchase model" +msgstr "" + +#: osparc/desktop/StartStopButtons.js +msgid "Run All" +msgstr "" + +#: osparc/desktop/StartStopButtons.js +msgid "Run Selection" +msgstr "" + +#: osparc/desktop/ZoomButtons.js +msgid "Zoom In" +msgstr "" + +#: osparc/desktop/ZoomButtons.js +msgid "Zoom Out" +msgstr "" + +#: osparc/desktop/ZoomButtons.js +msgid "Reset Zoom" +msgstr "" + +#: osparc/editor/AnnotationNoteCreator.js +msgid "Add Note" +msgstr "" + +#: osparc/editor/AnnotationNoteCreator.js +msgid "Add a recipient to be notified. Please make sure the user has access to the " +msgstr "" + +#: osparc/editor/AnnotationNoteCreator.js +msgid "Select recipient" +msgstr "" + +#: osparc/desktop/wallets/MemberListItem.js +msgid "Promote to " +msgstr "" + +#: osparc/desktop/wallets/MemberListItem.js +msgid "Demote to " +msgstr "" + +#: osparc/desktop/wallets/MemberListItem.js +msgid "Remove " +msgstr "" + +#: osparc/admin/Maintenance.js +msgid "Start and End dates go in UTC time zone" +msgstr "" + +#: osparc/admin/Maintenance.js +msgid "No Maintenance scheduled" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Create announcement" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "title" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "description" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "link" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Link" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Login" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Ribbon" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "User Menu" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Generate" +msgstr "" + +#: osparc/admin/Announcements.js +msgid "Copy announcement" +msgstr "" + +#: osparc/po/Users.js +msgid "user@email.address or user@*" +msgstr "" + +#: osparc/po/Users.js +msgid "Searching users..." +msgstr "" + +#: osparc/po/Users.js +msgid " user(s) found" +msgstr "" + +#: osparc/po/Users.js +msgid "Error searching users" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Pre-Registration" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Copy&Paste the Request Account Form in JSON format here ..." +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Request Form" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Unsuccessful Pre-Registration. See details below" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Searching Pre-Registered users..." +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "Pre-Registered as:" +msgstr "" + +#: osparc/po/PreRegistration.js +msgid "No Pre-Registered user found" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Create invitation" +msgstr "" + +#: osparc/po/Invitations.js +msgid "There is no invitation required in this product/deployment." +msgstr "" + +#: osparc/po/Invitations.js +msgid "new.user@email.address" +msgstr "" + +#: osparc/po/Invitations.js +msgid "User Email" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Welcome Credits (USD)" +msgstr "" + +#: osparc/po/Invitations.js +msgid "With expiration" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Trial Days" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Remember that this is a one time use link" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Copy invitation link" +msgstr "" + +#: osparc/po/Invitations.js +msgid "Data encrypted in the invitation" +msgstr "" + +#: osparc/po/MessageTemplates.js +msgid "Template updated" +msgstr "" + +#: osparc/tester/ConsoleErrors.js +msgid "Search in Message" +msgstr "" + +#: osparc/tester/WebSocketMessages.js +msgid "Channel" +msgstr "" + +#: osparc/tester/ConsoleErrors.js +msgid "Message" +msgstr "" + +#: osparc/tester/Statics.js +msgid "Local Storage" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Keep your balance running smoothly by automatically setting your credits to be recharged when it runs low." +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Before the auto-recharge function can be activated you need to add your first payment method" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Recharging amount (USD)" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Monthly limit (USD)" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Maximum amount in USD charged within a natural month." +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "To disable spending limit, clear input field" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Save and close" +msgstr "" + +#: osparc/desktop/credits/AutoRecharge.js +msgid "Changes on the Auto recharge were successfully saved" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "Select a model for more details" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "This bundle contains:" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "Terms and Conditions" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "Terms and Conditions" +msgstr "" + +#: osparc/vipMarket/LicensedItemDetails.js +msgid "Available for Importing" +msgstr "" + +#: osparc/form/ColorPicker.js +msgid "Pick a color" +msgstr "" + +#: osparc/pricing/Plans.js +msgid "New Pricing Plan" +msgstr "" + +#: osparc/pricing/Plans.js +msgid "Pricing Plan Creator" +msgstr "" + +#: osparc/pricing/Plans.js +msgid "Pricing Plan Editor" +msgstr "" + +#: osparc/pricing/PlanDetails.js +msgid "Return to Pricing Plans" +msgstr "" + +#: osparc/pricing/PlanDetails.js +msgid "Pricing Units" +msgstr "" + +#: osparc/study/PricingUnitLicense.js +msgid "Duration: 1 year" +msgstr "" + +#: osparc/study/PricingUnitLicense.js +msgid "Rent" +msgstr "" + +#: osparc/study/PricingUnitLicense.js +msgid "will be available until " +msgstr "" + +#: osparc/pricing/PlanEditor.js +msgid "Pricing Plan Key" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Successfully updated" +msgstr "" + +#: osparc/pricing/UnitsList.js +msgid "New Pricing Unit" +msgstr "" + +#: osparc/pricing/UnitsList.js +msgid "Pricing Unit Creator" +msgstr "" + +#: osparc/pricing/UnitsList.js +msgid "Pricing Unit Editor" +msgstr "" + +#: osparc/pricing/ServicesList.js +msgid "Add Service" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Unit Name" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Cost per unit" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Specific info" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "CPU" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "RAM" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "VRAM" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "More Extra Info" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Number of Seats" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Default" +msgstr "" + +#: osparc/pricing/UnitEditor.js +msgid "Successfully created" +msgstr "" diff --git a/services/static-webserver/client/source/translation/readme.txt b/services/static-webserver/client/source/translation/readme.txt index 08513ca8c3d..f7ff92f0c4d 100644 --- a/services/static-webserver/client/source/translation/readme.txt +++ b/services/static-webserver/client/source/translation/readme.txt @@ -1,4 +1,4 @@ This directory will contain translation (.po) files once you run the 'translation' job in your project. -NOTE: for the moment all translation files are in the .gitignore +Add more "locales" entries in compile.json to generate their .po files