Compare commits

...

32 Commits

Author SHA1 Message Date
Nivedin
7db7b9b068 fix: fallback section for embeds if invalid link (#3673) 2023-12-19 18:37:44 +05:30
James George
3d25ef48d1 fix(persistence-service): update schemas found to differ in runtime (#3671) 2023-12-19 18:34:27 +05:30
Mir Arif Hasan
4f138beb8a chore: db migration missing message (#3672) 2023-12-19 18:42:00 +06:00
James George
3d7a76bced chore(common): Gist export flow updates (#3665) 2023-12-19 17:37:35 +05:30
Nivedin
74359ea74e fix: auth-header not inheriting properties (#3668) 2023-12-19 17:04:24 +05:30
Mir Arif Hasan
a694d3f7eb hotfix: added validation on infra config update (#3667)
* feat: added validation on infra config update

* chore: removed async keyword

* fix: feedback
2023-12-19 17:15:46 +06:00
Nivedin
58a9514b67 fix: gql history schema error (#3662) 2023-12-19 16:39:32 +05:30
Akash K
a75bfa9d9e fix: actions not working when sidebar is hidden (#3669) 2023-12-19 16:13:59 +05:30
Andrew Bastin
7374a35b41 fix: broken ui due to accidentally moved postcss config 2023-12-19 12:40:07 +05:30
Andrew Bastin
5ad8f6c2ce chore: move window.open to platform io to handle desktop app 2023-12-19 11:26:37 +05:30
Andrew Bastin
f28298afe7 chore: update desktop app version 2023-12-18 23:43:40 +05:30
Andrew Bastin
56c6e8c643 chore: add devtools for production desktop app builds 2023-12-18 23:43:40 +05:30
Andrew Bastin
1b36de4fa3 fix: handle backspace navigating back on desktop app 2023-12-18 23:43:40 +05:30
Andrew Bastin
2f773bec79 fix: drag not working on windows 2023-12-18 23:43:40 +05:30
Andrew Bastin
d3e04c59cc chore: update tailwind stuff on selfhost-desktop 2023-12-18 23:43:40 +05:30
James George
5179cf59a4 fix(common): ensure the add-environment modal value field is empty when opened via the inspector (#3664) 2023-12-18 20:39:23 +05:30
Andrew Bastin
fad31a47ee chore: bump versions of all relevant packages 2023-12-16 22:27:41 +05:30
James George
72c71ddbd4 chore: remove expand widget from the GQL collections import/export modal (#3661) 2023-12-16 17:06:51 +05:30
Nivedin
a0f5ebee39 fix: embeds system theme (#3659)
Co-authored-by: jamesgeorge007 <jamesgeorge998001@gmail.com>
2023-12-16 17:01:23 +05:30
Anwarul Islam
f93558324f chore: move hoppscotch-ui package out of the monorepo (#3620)
Co-authored-by: Andrew Bastin <andrewbastin.k@gmail.com>
2023-12-16 16:58:10 +05:30
Liyas Thomas
d80e6c01c8 chore: i18n 2023-12-16 12:29:44 +05:30
Liyas Thomas
06f0f1c91b fix: broken docs link 2023-12-16 10:36:54 +05:30
Joel Jacob Stephen
9b870f876a chore: banner cleanup (#3658) 2023-12-15 17:59:33 +05:30
Joel Jacob Stephen
cf8b5975ac refactor: improvements made to how banners are to be dismissed (#3656) 2023-12-15 17:08:57 +05:30
Nivedin
93082c3816 refactor: embeds preview theme (#3657) 2023-12-15 17:08:02 +05:30
James George
d66537ac34 fix(common): GraphQL query syntax highlighting (#3653)
Co-authored-by: Andrew Bastin <andrewbastin.k@gmail.com>
2023-12-15 14:37:01 +05:30
Nivedin
fc4c15e52d fix: auth-headers in collection bug (#3652)
* fix: fallback for importers and fix spelling

* chore: update i18n strings
2023-12-15 02:49:35 +05:30
Liyas Thomas
b521604b66 fix: collection properties styles 2023-12-14 18:00:46 +05:30
James George
9bc81a6d67 feat(cli): support collection level authorization and headers (#3636) 2023-12-14 12:43:22 +05:30
Joel Jacob Stephen
c47e2e7767 fix: notify that the user is not an admin when trying to login with a non admin account in admin dashboard (#3651) 2023-12-14 12:36:05 +05:30
Akash K
5209c0a8ca feat: dynamically load enabled auth providers (#3646) 2023-12-13 23:38:21 +05:30
Nivedin
47e009267b feat: collection level headers and authorization (#3505)
Co-authored-by: Andrew Bastin <andrewbastin.k@gmail.com>
2023-12-13 22:43:18 +05:30
257 changed files with 8901 additions and 9904 deletions

5
.gitignore vendored
View File

@@ -81,10 +81,7 @@ web_modules/
# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local
.env.*
# parcel-bundler cache (https://parceljs.org/)
.cache

View File

@@ -25,6 +25,7 @@
"devDependencies": {
"@commitlint/cli": "^16.2.3",
"@commitlint/config-conventional": "^16.2.1",
"@hoppscotch/ui": "^0.1.0",
"@types/node": "17.0.27",
"cross-env": "^7.0.3",
"http-server": "^14.1.1",

View File

@@ -17,9 +17,9 @@
"types": "dist/index.d.ts",
"sideEffects": false,
"dependencies": {
"@codemirror/language": "6.9.0",
"@lezer/highlight": "1.1.4",
"@lezer/lr": "^1.3.13"
"@codemirror/language": "6.9.3",
"@lezer/highlight": "1.2.0",
"@lezer/lr": "^1.3.14"
},
"devDependencies": {
"@lezer/generator": "^1.5.1",

View File

@@ -1,6 +1,6 @@
{
"name": "hoppscotch-backend",
"version": "2023.8.4-1",
"version": "2023.12.0-1",
"description": "",
"author": "",
"private": true,

View File

@@ -676,9 +676,16 @@ export const INFRA_CONFIG_RESET_FAILED = 'infra_config/reset_failed' as const;
*/
export const INFRA_CONFIG_INVALID_INPUT = 'infra_config/invalid_input' as const;
/**
* Infra Config service (auth provider/mailer/audit logs) not configured
* (InfraConfigService)
*/
export const INFRA_CONFIG_SERVICE_NOT_CONFIGURED =
'infra_config/service_not_configured' as const;
/**
* Error message for when the database table does not exist
* (InfraConfigService)
*/
export const DATABASE_TABLE_NOT_EXIST =
'Database migration not performed. Please check the FAQ for assistance: https://docs.hoppscotch.io/support/faq';
'Database migration not found. Please check the documentation for assistance: https://docs.hoppscotch.io/documentation/self-host/community-edition/install-and-build#running-migrations';

View File

@@ -15,11 +15,13 @@ import {
INFRA_CONFIG_NOT_LISTED,
INFRA_CONFIG_RESET_FAILED,
INFRA_CONFIG_UPDATE_FAILED,
INFRA_CONFIG_SERVICE_NOT_CONFIGURED,
} from 'src/errors';
import { throwErr, validateEmail, validateSMTPUrl } from 'src/utils';
import { ConfigService } from '@nestjs/config';
import { ServiceStatus, stopApp } from './helper';
import { EnableAndDisableSSOArgs, InfraConfigArgs } from './input-args';
import { AuthProvider } from 'src/auth/helper';
@Injectable()
export class InfraConfigService implements OnModuleInit {
@@ -124,7 +126,7 @@ export class InfraConfigService implements OnModuleInit {
cast(dbInfraConfig: DBInfraConfig) {
return <InfraConfig>{
name: dbInfraConfig.name,
value: dbInfraConfig.value,
value: dbInfraConfig.value ?? '',
};
}
@@ -182,6 +184,38 @@ export class InfraConfigService implements OnModuleInit {
}
}
/**
* Check if the service is configured or not
* @param service Service can be Auth Provider, Mailer, Audit Log etc.
* @returns Either true or false
*/
isServiceConfigured(service: AuthProvider) {
switch (service) {
case AuthProvider.GOOGLE:
return (
this.configService.get<string>('INFRA.GOOGLE_CLIENT_ID') &&
this.configService.get<string>('INFRA.GOOGLE_CLIENT_SECRET')
);
case AuthProvider.GITHUB:
return (
this.configService.get<string>('INFRA.GITHUB_CLIENT_ID') &&
!this.configService.get<string>('INFRA.GITHUB_CLIENT_SECRET')
);
case AuthProvider.MICROSOFT:
return (
this.configService.get<string>('INFRA.MICROSOFT_CLIENT_ID') &&
!this.configService.get<string>('INFRA.MICROSOFT_CLIENT_SECRET')
);
case AuthProvider.EMAIL:
return (
this.configService.get<string>('INFRA.MAILER_SMTP_URL') &&
this.configService.get<string>('INFRA.MAILER_ADDRESS_FROM')
);
default:
return false;
}
}
/**
* Enable or Disable SSO for login/signup
* @param provider Auth Provider to enable or disable
@@ -195,15 +229,21 @@ export class InfraConfigService implements OnModuleInit {
let updatedAuthProviders = allowedAuthProviders;
providerInfo.forEach(({ provider, status }) => {
for (let i = 0; i < providerInfo.length; i++) {
const { provider, status } = providerInfo[i];
if (status === ServiceStatus.ENABLE) {
const isConfigured = this.isServiceConfigured(provider);
if (!isConfigured) {
throwErr(INFRA_CONFIG_SERVICE_NOT_CONFIGURED);
}
updatedAuthProviders.push(provider);
} else if (status === ServiceStatus.DISABLE) {
updatedAuthProviders = updatedAuthProviders.filter(
(p) => p !== provider,
);
}
});
}
updatedAuthProviders = [...new Set(updatedAuthProviders)];
@@ -286,6 +326,9 @@ export class InfraConfigService implements OnModuleInit {
}
}
/**
* Validate the values of the InfraConfigs
*/
validateEnvValues(
infraConfigs: {
name: InfraConfigEnumForClient | InfraConfigEnum;
@@ -302,6 +345,24 @@ export class InfraConfigService implements OnModuleInit {
const isValidEmail = validateEmail(infraConfigs[i].value);
if (!isValidEmail) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.GOOGLE_CLIENT_ID:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.GOOGLE_CLIENT_SECRET:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.GITHUB_CLIENT_ID:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.GITHUB_CLIENT_SECRET:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.MICROSOFT_CLIENT_ID:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
case InfraConfigEnumForClient.MICROSOFT_CLIENT_SECRET:
if (!infraConfigs[i].value) return E.left(INFRA_CONFIG_INVALID_INPUT);
break;
default:
break;
}

View File

@@ -1,6 +1,6 @@
{
"name": "@hoppscotch/cli",
"version": "0.4.0",
"version": "0.5.0",
"description": "A CLI to run Hoppscotch test scripts in CI environments.",
"homepage": "https://hoppscotch.io",
"main": "dist/index.js",

View File

@@ -1,63 +1,64 @@
import { ExecException } from "child_process";
import { HoppErrorCode } from "../../types/errors";
import { execAsync, getErrorCode, getTestJsonFilePath } from "../utils";
import { runCLI, getErrorCode, getTestJsonFilePath } from "../utils";
describe("Test 'hopp test <file>' command:", () => {
test("No collection file path provided.", async () => {
const cmd = `node ./bin/hopp test`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = "test";
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_ARGUMENT");
});
test("Collection file not found.", async () => {
const cmd = `node ./bin/hopp test notfound.json`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = "test notfound.json";
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("FILE_NOT_FOUND");
});
test("Collection file is invalid JSON.", async () => {
const cmd = `node ./bin/hopp test ${getTestJsonFilePath(
const args = `test ${getTestJsonFilePath(
"malformed-collection.json"
)}`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("UNKNOWN_ERROR");
});
test("Malformed collection file.", async () => {
const cmd = `node ./bin/hopp test ${getTestJsonFilePath(
const args = `test ${getTestJsonFilePath(
"malformed-collection2.json"
)}`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("MALFORMED_COLLECTION");
});
test("Invalid arguement.", async () => {
const cmd = `node ./bin/hopp invalid-arg`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = "invalid-arg";
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_ARGUMENT");
});
test("Collection file not JSON type.", async () => {
const cmd = `node ./bin/hopp test ${getTestJsonFilePath("notjson.txt")}`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = `test ${getTestJsonFilePath("notjson.txt")}`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_FILE_TYPE");
});
test("Some errors occured (exit code 1).", async () => {
const cmd = `node ./bin/hopp test ${getTestJsonFilePath("fails.json")}`;
const { error } = await execAsync(cmd);
const args = `test ${getTestJsonFilePath("fails.json")}`;
const { error } = await runCLI(args);
expect(error).not.toBeNull();
expect(error).toMatchObject(<ExecException>{
@@ -66,75 +67,83 @@ describe("Test 'hopp test <file>' command:", () => {
});
test("No errors occured (exit code 0).", async () => {
const cmd = `node ./bin/hopp test ${getTestJsonFilePath("passes.json")}`;
const { error } = await execAsync(cmd);
const args = `test ${getTestJsonFilePath("passes.json")}`;
const { error } = await runCLI(args);
expect(error).toBeNull();
});
test("Supports inheriting headers and authorization set at the root collection", async () => {
const args = `test ${getTestJsonFilePath("collection-level-headers-auth.json")}`;
const { error } = await runCLI(args);
expect(error).toBeNull();
})
});
describe("Test 'hopp test <file> --env <file>' command:", () => {
const VALID_TEST_CMD = `node ./bin/hopp test ${getTestJsonFilePath(
const VALID_TEST_ARGS = `test ${getTestJsonFilePath(
"passes.json"
)}`;
test("No env file path provided.", async () => {
const cmd = `${VALID_TEST_CMD} --env`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = `${VALID_TEST_ARGS} --env`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_ARGUMENT");
});
test("ENV file not JSON type.", async () => {
const cmd = `${VALID_TEST_CMD} --env ${getTestJsonFilePath("notjson.txt")}`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = `${VALID_TEST_ARGS} --env ${getTestJsonFilePath("notjson.txt")}`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_FILE_TYPE");
});
test("ENV file not found.", async () => {
const cmd = `${VALID_TEST_CMD} --env notfound.json`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = `${VALID_TEST_ARGS} --env notfound.json`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("FILE_NOT_FOUND");
});
test("No errors occured (exit code 0).", async () => {
const TESTS_PATH = getTestJsonFilePath("env-flag-tests.json");
const ENV_PATH = getTestJsonFilePath("env-flag-envs.json");
const cmd = `node ./bin/hopp test ${TESTS_PATH} --env ${ENV_PATH}`;
const { error, stdout } = await execAsync(cmd);
const args = `test ${TESTS_PATH} --env ${ENV_PATH}`;
const { error } = await runCLI(args);
expect(error).toBeNull();
});
});
describe("Test 'hopp test <file> --delay <delay_in_ms>' command:", () => {
const VALID_TEST_CMD = `node ./bin/hopp test ${getTestJsonFilePath(
const VALID_TEST_ARGS = `test ${getTestJsonFilePath(
"passes.json"
)}`;
test("No value passed to delay flag.", async () => {
const cmd = `${VALID_TEST_CMD} --delay`;
const { stderr } = await execAsync(cmd);
const out = getErrorCode(stderr);
const args = `${VALID_TEST_ARGS} --delay`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_ARGUMENT");
});
test("Invalid value passed to delay flag.", async () => {
const cmd = `${VALID_TEST_CMD} --delay 'NaN'`;
const { stderr } = await execAsync(cmd);
const args = `${VALID_TEST_ARGS} --delay 'NaN'`;
const { stderr } = await runCLI(args);
const out = getErrorCode(stderr);
expect(out).toBe<HoppErrorCode>("INVALID_ARGUMENT");
});
test("Valid value passed to delay flag.", async () => {
const cmd = `${VALID_TEST_CMD} --delay 1`;
const { error } = await execAsync(cmd);
const args = `${VALID_TEST_ARGS} --delay 1`;
const { error } = await runCLI(args);
expect(error).toBeNull();
});

View File

@@ -0,0 +1,221 @@
[
{
"v": 1,
"name": "CollectionA",
"folders": [
{
"v": 1,
"name": "FolderA",
"folders": [
{
"v": 1,
"name": "FolderB",
"folders": [
{
"v": 1,
"name": "FolderC",
"folders": [],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestD",
"params": [],
"headers": [
{
"active": true,
"key": "X-Test-Header",
"value": "Overriden at RequestD"
}
],
"method": "GET",
"auth": {
"authType": "basic",
"authActive": true,
"username": "username",
"password": "password"
},
"preRequestScript": "",
"testScript": "pw.test(\"Overrides auth and headers set at the parent folder\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Overriden at RequestD\");\n pw.expect(pw.response.body.headers[\"authorization\"]).toBe(\"Basic dXNlcm5hbWU6cGFzc3dvcmQ=\");\n});",
"body": {
"contentType": null,
"body": null
}
}
],
"auth": {
"authType": "inherit",
"authActive": true
},
"headers": []
}
],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestC",
"params": [],
"headers": [],
"method": "GET",
"auth": {
"authType": "inherit",
"authActive": true
},
"preRequestScript": "",
"testScript": "pw.test(\"Correctly inherits auth and headers from the parent folder\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Overriden at FolderB\");\n pw.expect(pw.response.body.headers[\"key\"]).toBe(\"test-key\");\n});",
"body": {
"contentType": null,
"body": null
}
}
],
"auth": {
"authType": "api-key",
"authActive": true,
"addTo": "Headers",
"key": "key",
"value": "test-key"
},
"headers": [
{
"active": true,
"key": "X-Test-Header",
"value": "Overriden at FolderB"
}
]
}
],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestB",
"params": [],
"headers": [],
"method": "GET",
"auth": {
"authType": "inherit",
"authActive": true
},
"preRequestScript": "",
"testScript": "pw.test(\"Correctly inherits auth and headers from the parent folder\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Set at root collection\");\n pw.expect(pw.response.body.headers[\"authorization\"]).toBe(\"Bearer BearerToken\");\n});",
"body": {
"contentType": null,
"body": null
},
"id": "clpttpdq00003qp16kut6doqv"
}
],
"auth": {
"authType": "inherit",
"authActive": true
},
"headers": []
}
],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestA",
"params": [],
"headers": [],
"method": "GET",
"auth": {
"authType": "inherit",
"authActive": true
},
"preRequestScript": "",
"testScript": "pw.test(\"Correctly inherits auth and headers from the root collection\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Set at root collection\");\n pw.expect(pw.response.body.headers[\"authorization\"]).toBe(\"Bearer BearerToken\");\n});",
"body": {
"contentType": null,
"body": null
},
"id": "clpttpdq00003qp16kut6doqv"
}
],
"headers": [
{
"active": true,
"key": "X-Test-Header",
"value": "Set at root collection"
}
],
"auth": {
"authType": "bearer",
"authActive": true,
"token": "BearerToken"
}
},
{
"v": 1,
"name": "CollectionB",
"folders": [
{
"v": 1,
"name": "FolderA",
"folders": [],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestB",
"params": [],
"headers": [],
"method": "GET",
"auth": {
"authType": "inherit",
"authActive": true
},
"preRequestScript": "",
"testScript": "pw.test(\"Correctly inherits auth and headers from the parent folder\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Set at root collection\");\n pw.expect(pw.response.body.headers[\"authorization\"]).toBe(\"Bearer BearerToken\");\n});",
"body": {
"contentType": null,
"body": null
},
"id": "clpttpdq00003qp16kut6doqv"
}
],
"auth": {
"authType": "inherit",
"authActive": true
},
"headers": []
}
],
"requests": [
{
"v": "1",
"endpoint": "https://echo.hoppscotch.io",
"name": "RequestA",
"params": [],
"headers": [],
"method": "GET",
"auth": {
"authType": "inherit",
"authActive": true
},
"preRequestScript": "",
"testScript": "pw.test(\"Correctly inherits auth and headers from the root collection\", ()=> {\n pw.expect(pw.response.body.headers[\"x-test-header\"]).toBe(\"Set at root collection\");\n pw.expect(pw.response.body.headers[\"authorization\"]).toBe(\"Bearer BearerToken\");\n});",
"body": {
"contentType": null,
"body": null
},
"id": "clpttpdq00003qp16kut6doqv"
}
],
"headers": [
{
"active": true,
"key": "X-Test-Header",
"value": "Set at root collection"
}
],
"auth": {
"authType": "bearer",
"authActive": true,
"token": "BearerToken"
}
}
]

View File

@@ -1,10 +1,17 @@
import { exec } from "child_process";
import { resolve } from "path";
import { ExecResponse } from "./types";
export const execAsync = (command: string): Promise<ExecResponse> =>
new Promise((resolve) =>
exec(command, (error, stdout, stderr) => resolve({ error, stdout, stderr }))
);
export const runCLI = (args: string): Promise<ExecResponse> =>
{
const CLI_PATH = resolve(__dirname, "../../bin/hopp");
const command = `node ${CLI_PATH} ${args}`
return new Promise((resolve) =>
exec(command, (error, stdout, stderr) => resolve({ error, stdout, stderr }))
);
}
export const trimAnsi = (target: string) => {
const ansiRegex =

View File

@@ -1,8 +1,8 @@
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data";
import { HoppCollection } from "@hoppscotch/data";
import { HoppEnvs } from "./request";
export type CollectionRunnerParam = {
collections: HoppCollection<HoppRESTRequest>[];
collections: HoppCollection[];
envs: HoppEnvs;
delay?: number;
};

View File

@@ -33,7 +33,7 @@ export type HoppEnvs = {
export type CollectionStack = {
path: string;
collection: HoppCollection<HoppRESTRequest>;
collection: HoppCollection;
};
export type RequestReport = {

View File

@@ -1,8 +1,4 @@
import {
HoppCollection,
HoppRESTRequest,
isHoppRESTRequest,
} from "@hoppscotch/data";
import { HoppCollection, isHoppRESTRequest } from "@hoppscotch/data";
import * as A from "fp-ts/Array";
import { CommanderError } from "commander";
import { HoppCLIError, HoppErrnoException } from "../types/errors";
@@ -24,9 +20,7 @@ export const hasProperty = <P extends PropertyKey>(
* @returns True, if unknown parameter is valid Hoppscotch REST Collection;
* False, otherwise.
*/
export const isRESTCollection = (
param: unknown
): param is HoppCollection<HoppRESTRequest> => {
export const isRESTCollection = (param: unknown): param is HoppCollection => {
if (!!param && typeof param === "object") {
if (!hasProperty(param, "v") || typeof param.v !== "number") {
return false;
@@ -62,7 +56,6 @@ export const isRESTCollection = (
return false;
};
/**
* Checks if given error data is of type HoppCLIError, based on existence
* of code property.

View File

@@ -1,21 +1,23 @@
import * as A from "fp-ts/Array";
import { pipe } from "fp-ts/function";
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data";
import { bold } from "chalk";
import { log } from "console";
import * as A from "fp-ts/Array";
import { pipe } from "fp-ts/function";
import round from "lodash/round";
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data";
import { CollectionRunnerParam } from "../types/collections";
import {
HoppEnvs,
CollectionStack,
RequestReport,
HoppEnvs,
ProcessRequestParams,
RequestReport,
} from "../types/request";
import {
getRequestMetrics,
preProcessRequest,
processRequest,
} from "./request";
import { exceptionColors } from "./getters";
PreRequestMetrics,
RequestMetrics,
TestMetrics,
} from "../types/response";
import { DEFAULT_DURATION_PRECISION } from "./constants";
import {
printErrorsReport,
printFailedTestsReport,
@@ -23,15 +25,14 @@ import {
printRequestsMetrics,
printTestsMetrics,
} from "./display";
import {
PreRequestMetrics,
RequestMetrics,
TestMetrics,
} from "../types/response";
import { getTestMetrics } from "./test";
import { DEFAULT_DURATION_PRECISION } from "./constants";
import { exceptionColors } from "./getters";
import { getPreRequestMetrics } from "./pre-request";
import { CollectionRunnerParam } from "../types/collections";
import {
getRequestMetrics,
preProcessRequest,
processRequest,
} from "./request";
import { getTestMetrics } from "./test";
const { WARN, FAIL } = exceptionColors;
@@ -41,23 +42,23 @@ const { WARN, FAIL } = exceptionColors;
* @param param Data of hopp-collection with hopp-requests, envs to be processed.
* @returns List of report for each processed request.
*/
export const collectionsRunner =
async (param: CollectionRunnerParam): Promise<RequestReport[]> =>
{
const envs: HoppEnvs = param.envs;
const delay = param.delay ?? 0;
const requestsReport: RequestReport[] = [];
const collectionStack: CollectionStack[] = getCollectionStack(
param.collections
);
export const collectionsRunner = async (
param: CollectionRunnerParam
): Promise<RequestReport[]> => {
const envs: HoppEnvs = param.envs;
const delay = param.delay ?? 0;
const requestsReport: RequestReport[] = [];
const collectionStack: CollectionStack[] = getCollectionStack(
param.collections
);
while (collectionStack.length) {
// Pop out top-most collection from stack to be processed.
const { collection, path } = <CollectionStack>collectionStack.pop();
while (collectionStack.length) {
// Pop out top-most collection from stack to be processed.
const { collection, path } = <CollectionStack>collectionStack.pop();
// Processing each request in collection
for (const request of collection.requests) {
const _request = preProcessRequest(request);
const _request = preProcessRequest(request as HoppRESTRequest, collection);
const requestPath = `${path}/${_request.name}`;
const processRequestParams: ProcessRequestParams = {
path: requestPath,
@@ -69,13 +70,13 @@ export const collectionsRunner =
// Request processing initiated message.
log(WARN(`\nRunning: ${bold(requestPath)}`));
// Processing current request.
const result = await processRequest(processRequestParams)();
// Processing current request.
const result = await processRequest(processRequestParams)();
// Updating global & selected envs with new envs from processed-request output.
const { global, selected } = result.envs;
envs.global = global;
envs.selected = selected;
// Updating global & selected envs with new envs from processed-request output.
const { global, selected } = result.envs;
envs.global = global;
envs.selected = selected;
// Storing current request's report.
const requestReport = result.report;
@@ -84,15 +85,30 @@ export const collectionsRunner =
// Pushing remaining folders realted collection to stack.
for (const folder of collection.folders) {
const updatedFolder: HoppCollection = { ...folder }
if (updatedFolder.auth?.authType === "inherit") {
updatedFolder.auth = collection.auth;
}
if (collection.headers?.length) {
// Filter out header entries present in the parent collection under the same name
// This ensures the folder headers take precedence over the collection headers
const filteredHeaders = collection.headers.filter((collectionHeaderEntries) => {
return !updatedFolder.headers.some((folderHeaderEntries) => folderHeaderEntries.key === collectionHeaderEntries.key)
})
updatedFolder.headers.push(...filteredHeaders);
}
collectionStack.push({
path: `${path}/${folder.name}`,
collection: folder,
path: `${path}/${updatedFolder.name}`,
collection: updatedFolder,
});
}
}
return requestsReport;
};
return requestsReport;
};
/**
* Transforms collections to generate collection-stack which describes each collection's
@@ -100,9 +116,7 @@ export const collectionsRunner =
* @param collections Hopp-collection objects to be mapped to collection-stack type.
* @returns Mapped collections to collection-stack.
*/
const getCollectionStack = (
collections: HoppCollection<HoppRESTRequest>[]
): CollectionStack[] =>
const getCollectionStack = (collections: HoppCollection[]): CollectionStack[] =>
pipe(
collections,
A.map(

View File

@@ -2,7 +2,7 @@ import fs from "fs/promises";
import { FormDataEntry } from "../types/request";
import { error } from "../types/errors";
import { isRESTCollection, isHoppErrnoException } from "./checks";
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data";
import { HoppCollection } from "@hoppscotch/data";
/**
* Parses array of FormDataEntry to FormData.
@@ -35,20 +35,20 @@ export const parseErrorMessage = (e: unknown) => {
};
export async function readJsonFile(path: string): Promise<unknown> {
if(!path.endsWith('.json')) {
throw error({ code: "INVALID_FILE_TYPE", data: path })
if (!path.endsWith(".json")) {
throw error({ code: "INVALID_FILE_TYPE", data: path });
}
try {
await fs.access(path)
await fs.access(path);
} catch (e) {
throw error({ code: "FILE_NOT_FOUND", path: path })
throw error({ code: "FILE_NOT_FOUND", path: path });
}
try {
return JSON.parse((await fs.readFile(path)).toString())
} catch(e) {
throw error({ code: "UNKNOWN_ERROR", data: e })
return JSON.parse((await fs.readFile(path)).toString());
} catch (e) {
throw error({ code: "UNKNOWN_ERROR", data: e });
}
}
@@ -56,22 +56,24 @@ export async function readJsonFile(path: string): Promise<unknown> {
* Parses collection json file for given path:context.path, and validates
* the parsed collectiona array.
* @param path Collection json file path.
* @returns For successful parsing we get array of HoppCollection<HoppRESTRequest>,
* @returns For successful parsing we get array of HoppCollection,
*/
export async function parseCollectionData(
path: string
): Promise<HoppCollection<HoppRESTRequest>[]> {
let contents = await readJsonFile(path)
): Promise<HoppCollection[]> {
let contents = await readJsonFile(path);
const maybeArrayOfCollections: unknown[] = Array.isArray(contents) ? contents : [contents]
const maybeArrayOfCollections: unknown[] = Array.isArray(contents)
? contents
: [contents];
if(maybeArrayOfCollections.some((x) => !isRESTCollection(x))) {
if (maybeArrayOfCollections.some((x) => !isRESTCollection(x))) {
throw error({
code: "MALFORMED_COLLECTION",
path,
data: "Please check the collection data.",
})
});
}
return maybeArrayOfCollections as HoppCollection<HoppRESTRequest>[]
};
return maybeArrayOfCollections as HoppCollection[];
}

View File

@@ -1,31 +1,31 @@
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data";
import axios, { Method } from "axios";
import { URL } from "url";
import * as S from "fp-ts/string";
import * as A from "fp-ts/Array";
import * as T from "fp-ts/Task";
import * as E from "fp-ts/Either";
import * as T from "fp-ts/Task";
import * as TE from "fp-ts/TaskEither";
import { HoppRESTRequest } from "@hoppscotch/data";
import { responseErrors } from "./constants";
import { getDurationInSeconds, getMetaDataPairs } from "./getters";
import { testRunner, getTestScriptParams, hasFailedTestCases } from "./test";
import { RequestConfig, EffectiveHoppRESTRequest } from "../interfaces/request";
import { pipe } from "fp-ts/function";
import * as S from "fp-ts/string";
import { hrtime } from "process";
import { URL } from "url";
import { EffectiveHoppRESTRequest, RequestConfig } from "../interfaces/request";
import { RequestRunnerResponse } from "../interfaces/response";
import { preRequestScriptRunner } from "./pre-request";
import { HoppCLIError, error } from "../types/errors";
import {
HoppEnvs,
ProcessRequestParams,
RequestReport,
} from "../types/request";
import { RequestMetrics } from "../types/response";
import { responseErrors } from "./constants";
import {
printPreRequestRunner,
printRequestRunner,
printTestRunner,
} from "./display";
import { error, HoppCLIError } from "../types/errors";
import { hrtime } from "process";
import { RequestMetrics } from "../types/response";
import { pipe } from "fp-ts/function";
import { getDurationInSeconds, getMetaDataPairs } from "./getters";
import { preRequestScriptRunner } from "./pre-request";
import { getTestScriptParams, hasFailedTestCases, testRunner } from "./test";
// !NOTE: The `config.supported` checks are temporary until OAuth2 and Multipart Forms are supported
@@ -309,9 +309,12 @@ export const processRequest =
* @returns Updated request object free of invalid/missing data.
*/
export const preProcessRequest = (
request: HoppRESTRequest
request: HoppRESTRequest,
collection: HoppCollection,
): HoppRESTRequest => {
const tempRequest = Object.assign({}, request);
const { headers: parentHeaders, auth: parentAuth } = collection;
if (!tempRequest.v) {
tempRequest.v = "1";
}
@@ -327,18 +330,31 @@ export const preProcessRequest = (
if (!tempRequest.params) {
tempRequest.params = [];
}
if (!tempRequest.headers) {
if (parentHeaders?.length) {
// Filter out header entries present in the parent (folder/collection) under the same name
// This ensures the child headers take precedence over the parent headers
const filteredEntries = parentHeaders.filter((parentHeaderEntries) => {
return !tempRequest.headers.some((reqHeaderEntries) => reqHeaderEntries.key === parentHeaderEntries.key)
})
tempRequest.headers.push(...filteredEntries);
} else if (!tempRequest.headers) {
tempRequest.headers = [];
}
if (!tempRequest.preRequestScript) {
tempRequest.preRequestScript = "";
}
if (!tempRequest.testScript) {
tempRequest.testScript = "";
}
if (!tempRequest.auth) {
if (tempRequest.auth?.authType === "inherit") {
tempRequest.auth = parentAuth;
} else if (!tempRequest.auth) {
tempRequest.auth = { authActive: false, authType: "none" };
}
if (!tempRequest.body) {
tempRequest.body = { contentType: null, body: null };
}

View File

@@ -17,6 +17,7 @@
--lower-tertiary-sticky-fold: 7.125rem;
--lower-fourth-sticky-fold: 9.188rem;
--sidebar-primary-sticky-fold: 2rem;
--properties-primary-sticky-fold: 2.063rem;
}
@mixin light-theme {

View File

@@ -78,12 +78,6 @@
"iso": "he-HE",
"name": "עִברִית"
},
{
"code": "hi",
"file": "hi.json",
"iso": "hi-HI",
"name": "हिन्दी"
},
{
"code": "hu",
"file": "hu.json",

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Kanselleer",
"choose_file": "Kies 'n lêer",
@@ -10,6 +11,7 @@
"connect": "Koppel",
"connecting": "Connecting",
"copy": "Kopieer",
"create": "Create",
"delete": "Vee uit",
"disconnect": "Ontkoppel",
"dismiss": "Weier",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Prettify",
"properties": "Properties",
"remove": "Verwyder",
"rename": "Rename",
"restore": "Herstel",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Soek",
"send": "Stuur",
"share": "Share",
"start": "Begin",
"starting": "Starting",
"stop": "Stop",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Gesels met ons",
"contact_us": "Kontak Ons",
"cookies": "Cookies",
"copy": "Kopieer",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Sleutelbord kortpaaie",
"name": "Hoppscotch",
"new_version_found": "Nuwe weergawe gevind. Herlaai om op te dateer.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Volmag privaatheidsbeleid",
"reload": "Herlaai",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Genereer teken",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Sluit in by URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Leer hoe",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Wagwoord",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Teken",
"type": "Magtigingstipe",
"username": "Gebruikersnaam"
@@ -124,6 +148,7 @@
"created": "Versameling geskep",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Wysig versameling",
"import_or_create": "Import or create a collection",
"invalid_name": "Gee 'n geldige naam vir die versameling",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nuwe versameling",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Versameling hernoem",
"request_in_use": "Request in use",
"save_as": "Stoor as",
@@ -151,6 +178,7 @@
"remove_folder": "Weet u seker dat u hierdie vouer permanent wil uitvee?",
"remove_history": "Is u seker dat u alle geskiedenis permanent wil uitvee?",
"remove_request": "Is u seker dat u hierdie versoek permanent wil uitvee?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Weet u seker dat u hierdie span wil uitvee?",
"remove_telemetry": "Weet u seker dat u van Telemetry wil afskakel?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Koptekst {count}",
"message": "Boodskap {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokolle is leeg",
"schema": "Koppel aan 'n GraphQL -eindpunt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Spannaam leeg",
"teams": "Spanne is leeg",
"tests": "Daar is geen toetse vir hierdie versoek nie"
"tests": "Daar is geen toetse vir hierdie versoek nie",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Gee 'n geldige naam vir die omgewing",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Veranderlike lys"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Dit lyk nie asof hierdie blaaier ondersteuning vir bedieners gestuurde geleenthede het nie.",
"check_console_details": "Kyk na die konsole -log vir meer inligting.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL is nie behoorlik geformateer nie",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Kon nie 'n ongeldige liggaam mooi maak nie, los json -sintaksisfoute op en probeer weer",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Kon nie versoek stuur nie",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Geen duur nie",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Kon nie voorafversoekskrip uitvoer nie",
"something_went_wrong": "Iets het verkeerd geloop",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Uitvoer as JSON",
"create_secret_gist": "Skep geheime Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gis geskep",
"require_github": "Teken in met GitHub om 'n geheime idee te skep",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Inskrywings",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Die magtigingskop sal outomaties gegenereer word wanneer u die versoek stuur.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Genereer eers dokumentasie",
"network_fail": "Kon nie die API -eindpunt bereik nie. Kontroleer u netwerkverbinding en probeer weer.",
"offline": "Dit lyk asof u vanlyn is. Data in hierdie werkruimte is moontlik nie op datum nie.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Voer versamelings in",
"curl": "Voer cURL in",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Invoer misluk",
"from_file": "Import from File",
"from_gist": "Invoer vanaf Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Voer Gist URL in",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Invoer"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Versamelings",
"confirm": "Bevestig",
"customize_request": "Customize Request",
"edit_request": "Wysig versoek",
"import_export": "Invoer uitvoer"
"import_export": "Invoer uitvoer",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopieer skakel",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Duur",
"enter_curl": "Voer cURL in",
"generate_code": "Genereer kode",
"generated_code": "Kode gegenereer",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Koplys",
"invalid_name": "Gee 'n naam vir die versoek",
"method": "Metode",
@@ -480,12 +552,14 @@
"saved": "Versoek gestoor",
"share": "Deel",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Versoek",
"type": "Soort versoek",
"url": "URL",
"variables": "Veranderlikes",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopieer skakel"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Pas u rekeninginstellings aan.",
"account_email_description": "Jou primêre e -posadres.",
"account_name_description": "Dit is u vertoonnaam.",
"additional": "Additional Settings",
"background": "Agtergrond",
"black_mode": "Swart",
"choose_language": "Kies taal",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopieer versoekskakel",
"delete_method": "Kies DELETE metode",
"get_method": "Kies GET -metode",
"head_method": "Kies HOOF metode",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Stoor in versamelings",
"send_request": "Stuur versoek",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Versoek"
"title": "Versoek",
"copy_request_link": "Kopieer versoekskakel"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Na knipbord gekopieer",
"deleted": "Uitgevee",
"deprecated": "GEDRAGTEER",
@@ -742,10 +836,12 @@
"disconnected": "Ontkoppel",
"disconnected_from": "Ontkoppel van {name}",
"docs_generated": "Dokumentasie gegenereer",
"download_failed": "Download failed",
"download_started": "Aflaai begin",
"enabled": "Geaktiveer",
"file_imported": "Lêer ingevoer",
"finished_in": "Klaar in {duration} ms",
"hide": "Hide",
"history_deleted": "Geskiedenis uitgevee",
"linewrap": "Draai lyne toe",
"loading": "Laai tans ...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Navrae",
"query": "Navraag",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Toetse",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Verlaat span",
"exit_disabled": "Slegs eienaar kan nie die span verlaat nie",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Die e -posformaat is ongeldig",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Span gered",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Spanne",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "الغاء",
"choose_file": "اختيار ملف",
@@ -10,6 +11,7 @@
"connect": "الاتصال",
"connecting": "Connecting",
"copy": "نسخ",
"create": "Create",
"delete": "حذف",
"disconnect": "قطع الاتصال",
"dismiss": "رفض",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "لصق",
"prettify": "جمال",
"properties": "Properties",
"remove": "ازالة",
"rename": "Rename",
"restore": "اعادة",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "بحث",
"send": "ارسل",
"share": "Share",
"start": "ابدأ",
"starting": "Starting",
"stop": "قف",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "دردش معنا",
"contact_us": "اتصل بنا",
"cookies": "Cookies",
"copy": "انسخ",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "اختصارات لوحة المفاتيح",
"name": "هوبسكوتش",
"new_version_found": "تم العثور على نسخة جديدة. قم بالتحديث للتحديث.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "سياسة خصوصية الوكيل",
"reload": "إعادة تحميل",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "توليد رمز",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "تضمين في URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "تعلم كيف",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "كلمة المرور",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "رمز",
"type": "نوع التفويض",
"username": "اسم المستخدم"
@@ -124,6 +148,7 @@
"created": "تم إنشاء المجموعة",
"different_parent": "Cannot reorder collection with different parent",
"edit": "تحرير المجموعة",
"import_or_create": "Import or create a collection",
"invalid_name": "الرجاء تقديم اسم صالح للمجموعة",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "اسم المجموعة يجب ان لايقل على 3 رموز",
"new": "مجموعة جديدة",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "تمت إعادة تسمية المجموعة",
"request_in_use": "Request in use",
"save_as": "حفظ باسم",
@@ -151,6 +178,7 @@
"remove_folder": "هل أنت متأكد أنك تريد حذف هذا المجلد نهائيًا؟",
"remove_history": "هل أنت متأكد أنك تريد حذف كل المحفوظات بشكل دائم؟",
"remove_request": "هل أنت متأكد أنك تريد حذف هذا الطلب نهائيًا؟",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "هل أنت متأكد أنك تريد حذف هذا الفريق؟",
"remove_telemetry": "هل أنت متأكد أنك تريد الانسحاب من القياس عن بعد؟",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "رأس {count}",
"message": "الرسالة {count}",
@@ -192,11 +238,13 @@
"profile": "سجل الدخول لرؤية فريقك",
"protocols": "البروتوكولات فارغة",
"schema": "اتصل بنقطة نهاية GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "اسم الفريق فارغ",
"teams": "الفرق فارغة",
"tests": "لا توجد اختبارات لهذا الطلب"
"tests": "لا توجد اختبارات لهذا الطلب",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "الرجاء تقديم اسم صالح للبيئة",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "قائمة متغيرة"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "يبدو أن هذا المستعرض لا يدعم أحداث إرسال الخادم.",
"check_console_details": "تحقق من سجل وحدة التحكم للحصول على التفاصيل.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "لم يتم تنسيق cURL بشكل صحيح",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "تعذر تجميل جسم غير صالح وحل أخطاء بناء جملة json وحاول مرة أخرى",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "تعذر إرسال الطلب",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "لا مدة",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "تعذر تنفيذ نص الطلب المسبق",
"something_went_wrong": "هناك خطأ ما",
@@ -260,6 +314,7 @@
"export": {
"as_json": "تصدير بتنسيق JSON",
"create_secret_gist": "إنشاء جوهر سري",
"failed": "Something went wrong while exporting",
"gist_created": "خلقت الجست",
"require_github": "تسجيل الدخول باستخدام GitHub لإنشاء جوهر سري",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "الاشتراكات",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "سيتم إنشاء رأس التفويض تلقائيًا عند إرسال الطلب.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "قم بإنشاء الوثائق أولاً",
"network_fail": "تعذر الوصول إلى نقطة نهاية API. تحقق من اتصالك بالشبكة وحاول مرة أخرى.",
"offline": "يبدو أنك غير متصل بالإنترنت. قد لا تكون البيانات الموجودة في مساحة العمل هذه محدثة.",
@@ -316,7 +376,10 @@
"import": {
"collections": "مجموعات الاستيراد",
"curl": "استيراد cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "فشل الاستيراد",
"from_file": "Import from File",
"from_gist": "الاستيراد من Gist",
"from_gist_description": "استيراد من Gist URL",
"from_insomnia": "استيراد من Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "استيراد من مجموعة Postman",
"from_url": "استيراد من رابط",
"gist_url": "أدخل عنوان URL لـ Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "استيراد مجموعة من ملفHoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "يستورد"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "المجموعات",
"confirm": "يتأكد",
"customize_request": "Customize Request",
"edit_request": "تحرير الطلب",
"import_export": "استيراد و تصدير"
"import_export": "استيراد و تصدير",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "نسخ الوصلة",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "مدة",
"enter_curl": "أدخل cURL",
"generate_code": "إنشاء التعليمات البرمجية",
"generated_code": "رمز تم إنشاؤه",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "قائمة الرأس",
"invalid_name": "يرجى تقديم اسم للطلب",
"method": "طريقة",
@@ -480,12 +552,14 @@
"saved": "تم حفظ الطلب",
"share": "يشارك",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "طلب",
"type": "نوع الطلب",
"url": "URL",
"variables": "المتغيرات",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "نسخ الوصلة"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "تخصيص إعدادات حسابك.",
"account_email_description": "عنوان بريدك الإلكتروني الأساسي.",
"account_name_description": "هذا هو اسم العرض الخاص بك.",
"additional": "Additional Settings",
"background": "خلفية",
"black_mode": "أسود",
"choose_language": "اختر اللغة",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "تأكيد البريد الإلكتروني"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "نسخ ارتباط الطلب",
"delete_method": "حدد طريقة الحذف",
"get_method": "حدد طريقة GET",
"head_method": "حدد طريقة HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "حفظ في المجموعات",
"send_request": "ارسل طلب",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "طلب"
"title": "طلب",
"copy_request_link": "نسخ ارتباط الطلب"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "نسخ إلى الحافظة",
"deleted": "تم الحذف",
"deprecated": "إهمال",
@@ -742,10 +836,12 @@
"disconnected": "انقطع الاتصال",
"disconnected_from": "انقطع الاتصال بـ {name}",
"docs_generated": "تم إنشاء الوثائق",
"download_failed": "Download failed",
"download_started": "بدأ التنزيل",
"enabled": "ممكن",
"file_imported": "تم استيراد الملف",
"finished_in": "انتهى في {duration} مللي ثانية",
"hide": "Hide",
"history_deleted": "تم حذف السجل",
"linewrap": "خطوط الالتفاف",
"loading": "تحميل...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "استفسارات",
"query": "استفسار",
"schema": "مخطط",
"shared_requests": "Shared Requests",
"socketio": "مقبس",
"sse": "SSE",
"tests": "الاختبارات",
@@ -807,6 +905,7 @@
"email_do_not_match": "البريد الإلكتروني لا يتوافق مع معلومات حسابك. اتصل بمدير الفريق.",
"exit": "فريق الخروج",
"exit_disabled": "فقط المالك لا يمكنه الخروج من الفريق",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "تنسيق البريد الإلكتروني غير صالح",
"invalid_id": "معرف الفريق غير صالح. اتصل بمدير الفريق.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "فريق حفظ",
"select_a_team": "اختر فريق",
"success_invites": "Success invites",
"title": "فرق",
"we_sent_invite_link": "لقد أرسلنا رابط دعوة لجميع المدعوين!",
"we_sent_invite_link_description": "اطلب من جميع المدعوين التحقق من صندوق الوارد الخاص بهم. انقر على الرابط للانضمام إلى الفريق."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Cancel·lar",
"choose_file": "Triar un fitxer",
@@ -10,6 +11,7 @@
"connect": "Connectar",
"connecting": "Connecting",
"copy": "Copiar",
"create": "Create",
"delete": "Eliminar",
"disconnect": "Desconnectar",
"dismiss": "Tancar",
@@ -31,6 +33,7 @@
"open_workspace": "Obrir espai de treball",
"paste": "Enganxar",
"prettify": "Fes-ho bonic",
"properties": "Properties",
"remove": "Eliminar",
"rename": "Rename",
"restore": "Restaurar",
@@ -39,6 +42,7 @@
"scroll_to_top": "Desplaceu-vos cap a dalt",
"search": "Cercar",
"send": "Enviar",
"share": "Share",
"start": "Començar",
"starting": "Starting",
"stop": "Aturar",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Xateja amb nosaltres",
"contact_us": "Contacta amb nosaltres",
"cookies": "Cookies",
"copy": "Copiar",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copiar User Auth Token",
"developer_option": "Opcions de desenvolupador",
"developer_option_description": "Eines de desenvolupament que ajuden en el desenvolupament i manteniment de Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Dreceres de teclat",
"name": "Hoppscotch",
"new_version_found": "S'ha trobat una nova versió. Refresca per actualitzar.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Opcions",
"proxy_privacy_policy": "Política de privadesa del servidor intermediari (proxy)",
"reload": "Recarregar",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generar Token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Inclou a l'URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Aprèn com",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Passar per",
"password": "Contrasenya",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Tipus d'autorització",
"username": "Nom d'usuari"
@@ -124,6 +148,7 @@
"created": "Col·lecció creada",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Editar la col·lecció",
"import_or_create": "Import or create a collection",
"invalid_name": "Proporcioneu un nom vàlid per a la col·lecció",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "El nom de la col·lecció ha de tenir almenys 3 caràcters",
"new": "Nova col · lecció",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "S'ha canviat el nom de la col·lecció",
"request_in_use": "Request in use",
"save_as": "Guardar com",
@@ -151,6 +178,7 @@
"remove_folder": "Està segur que vol suprimir definitivament aquesta carpeta?",
"remove_history": "Està segur que vol suprimir definitivament tot l'historial?",
"remove_request": "Està segur que vol suprimir definitivament aquesta sol·licitud?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Està segur que vol suprimir aquest equip?",
"remove_telemetry": "Està segur que vol desactivar Telemetry?",
"request_change": "Està segur que vol descartar la sol·licitud actual, els canvis no desats es perdran.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Capçalera {count}",
"message": "Missatges {count}",
@@ -192,11 +238,13 @@
"profile": "Inicia sessió per veure el vostre perfil",
"protocols": "Els protocols estan buits",
"schema": "Connecta't a un endpoint GraphQL",
"shortcodes": "Els shortcodes estan buits",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "El nom de l'equip és buit",
"teams": "Els equips estan buits",
"tests": "No hi ha proves per a aquesta sol·licitud"
"tests": "No hi ha proves per a aquesta sol·licitud",
"shortcodes": "Els shortcodes estan buits"
},
"environment": {
"add_to_global": "Afegir-ho a Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Proporcioneu un nom vàlid per a l'entorn",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Llista de variables"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Sembla que aquest navegador no és compatible amb els Esdeveniments Enviats pel Servidor (Server Sent Events).",
"check_console_details": "Consulta el registre de la consola per obtenir més informació.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL no està formatat correctament",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "No s'ha pogut personalitzar un cos no vàlid, resol els errors de sintaxi json i tornar-ho a provar",
"network_error": "Sembla que hi ha un error de xarxa. Si us plau torna-ho a provar.",
"network_fail": "No s'ha pogut enviar la sol·licitud",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Sense durada",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No s'ha trobat cap coincidència",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "No s'ha pogut executar l'script de sol·licitud prèvia",
"something_went_wrong": "Alguna cosa ha anat malament",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exporta com a JSON",
"create_secret_gist": "Crear un Gist secret",
"failed": "Something went wrong while exporting",
"gist_created": "Gist creat",
"require_github": "Inicieu la sessió amb GitHub per crear un Gisst secret",
"title": "Exportar"
@@ -286,6 +341,9 @@
"subscriptions": "Subscripcions",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "La capçalera de l'autorització es generarà automàticament quan envieu la sol·licitud.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Genereu documentació primer",
"network_fail": "No es pot arribar al punt final de l'API. Comproveu la connexió de xarxa i torneu-ho a provar.",
"offline": "Sembla que estàs fora de línia. És possible que les dades d'aquest espai de treball no estiguin actualitzades.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importar col·leccions",
"curl": "Importar cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "La importació ha fallat",
"from_file": "Import from File",
"from_gist": "Importar des de Gist",
"from_gist_description": "Importar des de l'URL de Gist",
"from_insomnia": "Importar des d'Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Importar des de la col·lecció de Postman",
"from_url": "Importar des de l'URL",
"gist_url": "Introduïu l'URL del Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "No s'han pogut obtenir dades de l'URL",
"import_from_url_invalid_file_format": "S'ha produït un error en importar les col·leccions",
"import_from_url_invalid_type": "Tipus no compatible. Els valors acceptats són 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Col·leccions importades",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Importar col·leccions des d'un fitxer JSON de col·leccions Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importació"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Col·leccions",
"confirm": "Confirmar",
"customize_request": "Customize Request",
"edit_request": "Sol·licitud d'edició",
"import_export": "Importar / Exportar"
"import_export": "Importar / Exportar",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Estructurat",
"text": "Text"
},
"copy_link": "Copia l'enllaç",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Durada",
"enter_curl": "Introduïu cURL",
"generate_code": "Generar codi",
"generated_code": "Codi generat",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Llista de capçaleres",
"invalid_name": "Proporcioneu un nom per a la sol·licitud",
"method": "Mètode",
@@ -480,12 +552,14 @@
"saved": "S'ha desat la sol·licitud",
"share": "Compartir",
"share_description": "Comparteix Hoppscotch amb els teus amics",
"share_request": "Share Request",
"stop": "Stop",
"title": "Sol·licitud",
"type": "Tipus de sol·licitud",
"url": "URL",
"variables": "Variables",
"view_my_links": "Visualitzar els meus enllaços"
"view_my_links": "Visualitzar els meus enllaços",
"copy_link": "Copia l'enllaç"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personalitzeu la configuració del compte.",
"account_email_description": "La vostra adreça de correu electrònic principal.",
"account_name_description": "Aquest és el vostre nom d'exposició",
"additional": "Additional Settings",
"background": "Fons",
"black_mode": "Negre",
"choose_language": "Tria l'idioma",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verificar correu electronic"
},
"shortcodes": {
"actions": "Accions",
"created_on": "Creat el",
"deleted": "S'ha suprimit el shortcode",
"method": "Mètode",
"not_found": "No s'ha trobat el shortcode",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copiar l'enllaç de la sol·licitud",
"delete_method": "Seleccionar el mètode DELETE",
"get_method": "Seleccionar el mètode GET",
"head_method": "Seleccionar el mètode HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Guardar a les col·leccions",
"send_request": "Enviar sol.licitud",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Sol·licitud"
"title": "Sol·licitud",
"copy_request_link": "Copiar l'enllaç de la sol·licitud"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "No s'ha pogut connectar",
"connection_failed": "Connexió fallida",
"connection_lost": "Connexió perduda",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiat al porta-retalls",
"deleted": "Eliminat",
"deprecated": "Obsolet",
@@ -742,10 +836,12 @@
"disconnected": "Desconnectat",
"disconnected_from": "Desconnectat de {name}",
"docs_generated": "Documentació generada",
"download_failed": "Download failed",
"download_started": "S'ha iniciat la baixada",
"enabled": "Activat",
"file_imported": "Fitxer importat",
"finished_in": "Acabat en {duration} ms",
"hide": "Hide",
"history_deleted": "S'ha suprimit l'historial",
"linewrap": "Embolcar línies",
"loading": "S'està carregant...",
@@ -756,6 +852,7 @@
"published_error": "S'ha produït un error en publicar el missatge: {topic} al tema: {message}",
"published_message": "Missatge publicat: {missatge} al tema: {tema}",
"reconnection_error": "No s'ha pogut tornar a connectar",
"show": "Show",
"subscribed_failed": "No s'ha pogut subscriure al tema: {topic}",
"subscribed_success": "S'ha subscrit correctament al tema: {topic}",
"unsubscribed_failed": "No s'ha pogut cancel·lar la subscripció al tema: {topic}",
@@ -791,6 +888,7 @@
"queries": "Consultes",
"query": "Consulta",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Proves",
@@ -807,6 +905,7 @@
"email_do_not_match": "El correu electrònic no coincideix amb les dades del vostre compte. Contacta amb el propietari del teu equip.",
"exit": "Sortir de l'equip",
"exit_disabled": "L'únic propietari no pot sortir de l'equip",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "El format del correu electrònic no és vàlid",
"invalid_id": "Identificador d'equip no vàlid. Contacta amb el propietari del teu equip.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "S'ha guardat l'equip",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Equips",
"we_sent_invite_link": "Hem enviat un enllaç d'invitació a tots els convidats!",
"we_sent_invite_link_description": "Demaneu a tots els convidats que comprovin la seva safata d'entrada. Feu clic a l'enllaç per unir-vos a l'equip."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Accions",
"created_on": "Creat el",
"deleted": "S'ha suprimit el shortcode",
"method": "Mètode",
"not_found": "No s'ha trobat el shortcode",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "自动滚动",
"cancel": "取消",
"choose_file": "选择文件",
@@ -10,6 +11,7 @@
"connect": "连接",
"connecting": "连接中",
"copy": "复制",
"create": "Create",
"delete": "删除",
"disconnect": "断开连接",
"dismiss": "忽略",
@@ -31,6 +33,7 @@
"open_workspace": "打开工作区",
"paste": "粘贴",
"prettify": "美化",
"properties": "Properties",
"remove": "移除",
"rename": "Rename",
"restore": "恢复",
@@ -39,6 +42,7 @@
"scroll_to_top": "滚动至顶部",
"search": "搜索",
"send": "发送",
"share": "Share",
"start": "开始",
"starting": "正在开始",
"stop": "停止",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "与我们交谈",
"contact_us": "联系我们",
"cookies": "Cookies",
"copy": "复制",
"copy_interface_type": "Copy interface type",
"copy_user_id": "复制认证 Token",
"developer_option": "开发者选项",
"developer_option_description": "开发者工具,有助于开发和维护 Hoppscotch。",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "键盘快捷键",
"name": "Hoppscotch",
"new_version_found": "已发现新版本。刷新页面以更新。",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "选项",
"proxy_privacy_policy": "代理隐私政策",
"reload": "重新加载",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "生成令牌",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "包含在 URL 内",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "了解更多",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "传递方式",
"password": "密码",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "令牌",
"type": "授权类型",
"username": "用户名"
@@ -124,6 +148,7 @@
"created": "集合已创建",
"different_parent": "不能用不同的父类来重新排序集合",
"edit": "编辑集合",
"import_or_create": "Import or create a collection",
"invalid_name": "请提供有效的集合名称",
"invalid_root_move": "该集合已经在根级了",
"moved": "移动完成",
@@ -132,6 +157,8 @@
"name_length_insufficient": "集合名字至少需要 3 个字符",
"new": "新建集合",
"order_changed": "集合顺序已更新",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "集合已更名",
"request_in_use": "请求正在使用中",
"save_as": "另存为",
@@ -151,6 +178,7 @@
"remove_folder": "你确定要永久删除该文件夹吗?",
"remove_history": "你确定要永久删除全部历史记录吗?",
"remove_request": "你确定要永久删除该请求吗?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "你确定要删除该团队吗?",
"remove_telemetry": "你确定要退出遥测服务吗?",
"request_change": "你确定你要放弃当前的请求,未保存的修改将被丢失。",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "请求头 {count}",
"message": "消息 {count}",
@@ -192,11 +238,13 @@
"profile": "登录以查看你的个人资料",
"protocols": "协议为空",
"schema": "连接至 GraphQL 端点",
"shortcodes": "Shortcodes 为空",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "订阅为空",
"team_name": "团队名称为空",
"teams": "团队为空",
"tests": "没有针对该请求的测试"
"tests": "没有针对该请求的测试",
"shortcodes": "Shortcodes 为空"
},
"environment": {
"add_to_global": "添加到全局环境",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "请提供有效的环境名称",
"list": "Environment variables",
"my_environments": "我的环境",
@@ -232,8 +281,10 @@
"variable_list": "变量列表"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "该浏览器似乎不支持 SSE。",
"check_console_details": "检查控制台日志以获悉详情",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL 格式不正确",
"danger_zone": "危险区域",
"delete_account": "您的帐号目前为这些团队的拥有者:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "无法美化无效的请求头,处理 JSON 语法错误并重试",
"network_error": "好像发生了网络错误,请重试。",
"network_fail": "无法发送请求",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "无持续时间",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "找不到结果",
"page_not_found": "找不到此頁面",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "无法执行预请求脚本",
"something_went_wrong": "发生了一些错误",
@@ -260,6 +314,7 @@
"export": {
"as_json": "导出为 JSON",
"create_secret_gist": "创建私密 Gist",
"failed": "Something went wrong while exporting",
"gist_created": "已创建 Gist",
"require_github": "使用 GitHub 登录以创建私密 Gist",
"title": "导出"
@@ -286,6 +341,9 @@
"subscriptions": "订阅",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "时间",
"url": "网址"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "授权头将会在你发送请求时自动生成。",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "请先生成文档",
"network_fail": "无法到达 API 端点。请检查网络连接并重试。",
"offline": "你似乎处于离线状态,该工作区中的数据可能不是最新。",
@@ -316,7 +376,10 @@
"import": {
"collections": "导入集合",
"curl": "导入 cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "导入失败",
"from_file": "Import from File",
"from_gist": "从 Gist 导入",
"from_gist_description": "从 Gist URL 导入",
"from_insomnia": "从 Insomnia 导入",
@@ -331,11 +394,17 @@
"from_postman_description": "从 Postman 集合中导入",
"from_url": "从 URL 导入",
"gist_url": "输入 Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "无法从网址取得资料",
"import_from_url_invalid_file_format": "导入组合时发生错误",
"import_from_url_invalid_type": "不支持此类型。可接受的值为 'hoppscotch'、'openapi'、'postman'、'insomnia'",
"import_from_url_success": "已导入组合",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "从 Hoppscotch 的集合文件导入JSON",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "导入"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "有未保存的变更",
"collections": "集合",
"confirm": "确认",
"customize_request": "Customize Request",
"edit_request": "编辑请求",
"import_export": "导入/导出"
"import_export": "导入/导出",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "您已经订阅了此主题。",
@@ -449,13 +520,14 @@
"structured": "结构",
"text": "文字"
},
"copy_link": "复制链接",
"different_collection": "不能对来自不同集合的请求进行重新排序",
"duplicated": "重复的请求",
"duration": "持续时间",
"enter_curl": "输入 cURL",
"generate_code": "生成代码",
"generated_code": "已生成代码",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "请求头列表",
"invalid_name": "请提供请求名称",
"method": "方法",
@@ -480,12 +552,14 @@
"saved": "请求已保存",
"share": "分享",
"share_description": "分享 Hoppscotch 给你的朋友",
"share_request": "Share Request",
"stop": "Stop",
"title": "请求",
"type": "请求类型",
"url": "URL",
"variables": "变量",
"view_my_links": "查看我的链接"
"view_my_links": "查看我的链接",
"copy_link": "复制链接"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "自定义您的帐户设置。",
"account_email_description": "您的主要电子邮箱地址。",
"account_name_description": "这是您的显示名称。",
"additional": "Additional Settings",
"background": "背景",
"black_mode": "黑色",
"choose_language": "选择语言",
@@ -559,14 +634,31 @@
"verified_email": "已验证电子邮件地址",
"verify_email": "验证电子邮箱"
},
"shortcodes": {
"actions": "操作",
"created_on": "创建于",
"deleted": "已刪除快捷键",
"method": "方法",
"not_found": "找不到快捷键",
"short_code": "快捷键",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "复制请求链接",
"delete_method": "选择 DELETE 方法",
"get_method": "选择 GET 方法",
"head_method": "选择 HEAD 方法",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "保存到集合",
"send_request": "发送请求",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "请求"
"title": "请求",
"copy_request_link": "复制请求链接"
},
"response": {
"copy": "复制响应至剪贴板",
@@ -735,6 +828,7 @@
"connection_error": "连接错误",
"connection_failed": "连接失败",
"connection_lost": "连接丢失",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "已复制到剪贴板",
"deleted": "已删除",
"deprecated": "已弃用",
@@ -742,10 +836,12 @@
"disconnected": "断开连接",
"disconnected_from": "与 {name} 断开连接",
"docs_generated": "已生成文档",
"download_failed": "Download failed",
"download_started": "开始下载",
"enabled": "启用",
"file_imported": "文件已导入",
"finished_in": "在 {duration} 毫秒内完成",
"hide": "Hide",
"history_deleted": "历史记录已删除",
"linewrap": "换行",
"loading": "正在加载……",
@@ -756,6 +852,7 @@
"published_error": "将信息:{topic}发布至主题:{message}时发生错误",
"published_message": "已将此信息:{message} 发布至主题:{topic}",
"reconnection_error": "重连失败",
"show": "Show",
"subscribed_failed": "无法订阅此主题:{topic}",
"subscribed_success": "成功订阅此主题:{topic}",
"unsubscribed_failed": "无法取消订阅此主题:{topic}",
@@ -791,6 +888,7 @@
"queries": "查询",
"query": "查询",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "测试",
@@ -807,6 +905,7 @@
"email_do_not_match": "邮箱无法与你的帐户信息匹配。请联系你的团队者。",
"exit": "退出团队",
"exit_disabled": "团队所有者无法退出团队",
"failed_invites": "Failed invites",
"invalid_coll_id": "无效的集合 ID",
"invalid_email_format": "电子邮箱格式无效",
"invalid_id": "无效的团队 ID请联系你的团队者。",
@@ -848,6 +947,7 @@
"same_target_destination": "目标相同",
"saved": "团队已保存",
"select_a_team": "选择团队",
"success_invites": "Success invites",
"title": "团队",
"we_sent_invite_link": "我们向所有受邀者发送了邀请链接!",
"we_sent_invite_link_description": "请所有受邀者检查他们的收件箱,点击链接以加入团队。"
@@ -879,5 +979,14 @@
"personal": "我的工作空间",
"team": "团队工作空间",
"title": "工作空间"
},
"shortcodes": {
"actions": "操作",
"created_on": "创建于",
"deleted": "已刪除快捷键",
"method": "方法",
"not_found": "找不到快捷键",
"short_code": "快捷键",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "zrušení",
"choose_file": "Vyberte soubor",
@@ -10,6 +11,7 @@
"connect": "Připojit",
"connecting": "Connecting",
"copy": "kopírovat",
"create": "Create",
"delete": "Vymazat",
"disconnect": "Odpojit",
"dismiss": "Zavrhnout",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Prettify",
"properties": "Properties",
"remove": "Odstranit",
"rename": "Rename",
"restore": "Obnovit",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Vyhledávání",
"send": "Poslat",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Stop",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "piš si s námi",
"contact_us": "Kontaktujte nás",
"cookies": "Cookies",
"copy": "kopírovat",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Klávesové zkratky",
"name": "Hoppscotch",
"new_version_found": "Nalezena nová verze. Aktualizujte aktualizací.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Zásady ochrany osobních údajů proxy",
"reload": "Znovu načíst",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generovat token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Zahrnout do adresy URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Zjistěte jak",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Heslo",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Žeton",
"type": "Typ autorizace",
"username": "Uživatelské jméno"
@@ -124,6 +148,7 @@
"created": "Kolekce vytvořena",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Upravit sbírku",
"import_or_create": "Import or create a collection",
"invalid_name": "Uveďte prosím platný název kolekce",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nová kolekce",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Sbírka přejmenována",
"request_in_use": "Request in use",
"save_as": "Uložit jako",
@@ -151,6 +178,7 @@
"remove_folder": "Opravdu chcete tuto složku trvale smazat?",
"remove_history": "Opravdu chcete trvale smazat celou historii?",
"remove_request": "Opravdu chcete tento požadavek trvale smazat?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Opravdu chcete tento tým smazat?",
"remove_telemetry": "Opravdu se chcete odhlásit z telemetrie?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Záhlaví {count}",
"message": "Zpráva {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokoly jsou prázdné",
"schema": "Připojte se ke koncovému bodu GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Název týmu prázdný",
"teams": "Týmy jsou prázdné",
"tests": "Pro tento požadavek neexistují žádné testy"
"tests": "Pro tento požadavek neexistují žádné testy",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Zadejte platný název prostředí",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Seznam proměnných"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Zdá se, že tento prohlížeč nemá podporu událostí odeslaných serverem.",
"check_console_details": "Podrobnosti najdete v protokolu konzoly.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL nemá správný formát",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Nelze předtifikovat neplatné tělo, vyřešit chyby syntaxe json a zkusit to znovu",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Žádost nelze odeslat",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Žádné trvání",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Skript předběžného požadavku nelze spustit",
"something_went_wrong": "Něco se pokazilo",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportovat jako JSON",
"create_secret_gist": "Vytvořte tajnou podstatu",
"failed": "Something went wrong while exporting",
"gist_created": "Podstata vytvořena",
"require_github": "Přihlaste se pomocí GitHub a vytvořte tajný seznam",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Předplatné",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Autorizační hlavička se automaticky vygeneruje při odeslání požadavku.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Nejprve vytvořte dokumentaci",
"network_fail": "Nelze dosáhnout koncového bodu API. Zkontrolujte připojení k síti a zkuste to znovu.",
"offline": "Zdá se, že jste offline. Data v tomto pracovním prostoru nemusí být aktuální.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Import sbírek",
"curl": "Importovat cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Import se nezdařil",
"from_file": "Import from File",
"from_gist": "Import z Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Zadejte URL adresy",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Import"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Sbírky",
"confirm": "Potvrdit",
"customize_request": "Customize Request",
"edit_request": "Upravit požadavek",
"import_export": "Import Export"
"import_export": "Import Export",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopírovat odkaz",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Doba trvání",
"enter_curl": "Zadejte cURL",
"generate_code": "Vygenerujte kód",
"generated_code": "Generovaný kód",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Seznam záhlaví",
"invalid_name": "Uveďte prosím název žádosti",
"method": "Metoda",
@@ -480,12 +552,14 @@
"saved": "Žádost uložena",
"share": "Podíl",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Žádost",
"type": "Typ požadavku",
"url": "URL",
"variables": "Proměnné",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopírovat odkaz"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Přizpůsobte si nastavení účtu.",
"account_email_description": "Vaše primární e -mailová adresa.",
"account_name_description": "Toto je vaše zobrazované jméno.",
"additional": "Additional Settings",
"background": "Pozadí",
"black_mode": "Černá",
"choose_language": "Vyber jazyk",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopírovat požadavek na odkaz",
"delete_method": "Vyberte metodu ODSTRANIT",
"get_method": "Vyberte metodu ZÍSKAT",
"head_method": "Vyberte metodu HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Uložit do sbírek",
"send_request": "Poslat žádost",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Žádost"
"title": "Žádost",
"copy_request_link": "Kopírovat požadavek na odkaz"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Zkopírováno do schránky",
"deleted": "Smazáno",
"deprecated": "ZASTARALÉ",
@@ -742,10 +836,12 @@
"disconnected": "Odpojeno",
"disconnected_from": "Odpojeno od {name}",
"docs_generated": "Vygenerovaná dokumentace",
"download_failed": "Download failed",
"download_started": "Stahování zahájeno",
"enabled": "Povoleno",
"file_imported": "Soubor importován",
"finished_in": "Hotovo za {duration} ms",
"hide": "Hide",
"history_deleted": "Historie odstraněna",
"linewrap": "Zabalit linky",
"loading": "Načítání...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Dotazy",
"query": "Dotaz",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testy",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Ukončete tým",
"exit_disabled": "Pouze vlastník nemůže opustit tým",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Formát e -mailu je neplatný",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Tým uložen",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Týmy",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Afbestille",
"choose_file": "Vælg en fil",
@@ -10,6 +11,7 @@
"connect": "Opret forbindelse",
"connecting": "Connecting",
"copy": "Kopi",
"create": "Create",
"delete": "Slet",
"disconnect": "Koble fra",
"dismiss": "Afskedige",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Prettify",
"properties": "Properties",
"remove": "Fjerne",
"rename": "Rename",
"restore": "Gendan",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Søg",
"send": "Sende",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Hold op",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Chat med os",
"contact_us": "Kontakt os",
"cookies": "Cookies",
"copy": "Kopi",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Tastaturgenveje",
"name": "Hoppscotch",
"new_version_found": "Ny version fundet. Opdater for at opdatere.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Politik til beskyttelse af personlige oplysninger i proxy",
"reload": "Genindlæs",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generer Token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Inkluder i URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Lær hvordan",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Adgangskode",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Polet",
"type": "Godkendelse Type",
"username": "Brugernavn"
@@ -124,6 +148,7 @@
"created": "Samlingen er oprettet",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Rediger samling",
"import_or_create": "Import or create a collection",
"invalid_name": "Angiv et gyldigt navn til samlingen",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Ny kollektion",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Samling omdøbt",
"request_in_use": "Request in use",
"save_as": "Gem som",
@@ -151,6 +178,7 @@
"remove_folder": "Er du sikker på, at du vil slette denne mappe permanent?",
"remove_history": "Er du sikker på, at du vil slette hele historikken permanent?",
"remove_request": "Er du sikker på, at du vil slette denne anmodning permanent?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Er du sikker på, at du vil slette dette hold?",
"remove_telemetry": "Er du sikker på, at du vil fravælge telemetri?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Overskrift {count}",
"message": "Besked {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokoller er tomme",
"schema": "Opret forbindelse til et GraphQL -slutpunkt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Teamnavn er tomt",
"teams": "Hold er tomme",
"tests": "Der er ingen test for denne anmodning"
"tests": "Der er ingen test for denne anmodning",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Angiv et gyldigt navn på miljøet",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Variabel liste"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Det ser ikke ud til, at denne browser understøtter Server Sent Events.",
"check_console_details": "Tjek konsollog for at få flere oplysninger.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL er ikke formateret korrekt",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Kunne ikke pryde et ugyldigt brødtekst, løse json -syntaksfejl og prøve igen",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Anmodningen kunne ikke sendes",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Ingen varighed",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Kunne ikke udføre pre-request script",
"something_went_wrong": "Noget gik galt",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Eksporter som JSON",
"create_secret_gist": "Opret hemmelig Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist skabt",
"require_github": "Log ind med GitHub for at skabe hemmelig kerne",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Abonnementer",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Autorisationsoverskriften genereres automatisk, når du sender anmodningen.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generer først dokumentation",
"network_fail": "Kunne ikke nå API -slutpunktet. Kontroller din netværksforbindelse, og prøv igen.",
"offline": "Du ser ud til at være offline. Data i dette arbejdsområde er muligvis ikke opdaterede.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importer samlinger",
"curl": "Importer cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Import mislykkedes",
"from_file": "Import from File",
"from_gist": "Import fra Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Indtast Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importere"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Samlinger",
"confirm": "Bekræfte",
"customize_request": "Customize Request",
"edit_request": "Rediger anmodning",
"import_export": "Import Eksport"
"import_export": "Import Eksport",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopier link",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Varighed",
"enter_curl": "Indtast cURL",
"generate_code": "Generer kode",
"generated_code": "Genereret kode",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Overskriftsliste",
"invalid_name": "Angiv et navn på anmodningen",
"method": "Metode",
@@ -480,12 +552,14 @@
"saved": "Anmodning gemt",
"share": "Del",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Anmodning",
"type": "Anmodningstype",
"url": "URL",
"variables": "Variabler",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopier link"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Tilpas dine kontoindstillinger.",
"account_email_description": "Din primære e -mail -adresse.",
"account_name_description": "Dette er dit visningsnavn.",
"additional": "Additional Settings",
"background": "Baggrund",
"black_mode": "Sort",
"choose_language": "Vælg sprog",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopiér anmodningslink",
"delete_method": "Vælg SLET metode",
"get_method": "Vælg GET -metode",
"head_method": "Vælg HEAD -metode",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Gem i samlinger",
"send_request": "Send anmodning",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Anmodning"
"title": "Anmodning",
"copy_request_link": "Kopiér anmodningslink"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Kopieret til udklipsholder",
"deleted": "Slettet",
"deprecated": "DEPRECATED",
@@ -742,10 +836,12 @@
"disconnected": "Afbrudt",
"disconnected_from": "Koblet fra {name}",
"docs_generated": "Dokumentation genereret",
"download_failed": "Download failed",
"download_started": "Downloaden er startet",
"enabled": "Aktiveret",
"file_imported": "Fil importeret",
"finished_in": "Færdig om {duration} ms",
"hide": "Hide",
"history_deleted": "Historik slettet",
"linewrap": "Wrap linjer",
"loading": "Indlæser...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Forespørgsler",
"query": "Forespørgsel",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Test",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Afslut Team",
"exit_disabled": "Kun ejeren kan ikke forlade teamet",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E -mailformatet er ugyldigt",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Hold reddet",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Hold",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Abbrechen",
"choose_file": "Datei auswählen",
@@ -10,6 +11,7 @@
"connect": "Verbinden",
"connecting": "Connecting",
"copy": "Kopieren",
"create": "Create",
"delete": "Löschen",
"disconnect": "Trennen",
"dismiss": "Verwerfen",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Einfügen",
"prettify": "Verschönern",
"properties": "Properties",
"remove": "Entfernen",
"rename": "Rename",
"restore": "Wiederherstellen",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Suchen",
"send": "Senden",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Stopp",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Chatte mit uns",
"contact_us": "Kontaktiere uns",
"cookies": "Cookies",
"copy": "Kopieren",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Kopiere Nutzer-Authentisierungstoken",
"developer_option": "Entwickleroptionen",
"developer_option_description": "Entwicklungswerkzeuge, die helfen Hoppscotch weiter zu entwickeln und zu warten.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Tastaturkürzel",
"name": "Hoppscotch",
"new_version_found": "Neue Version gefunden. Zum Aktualisieren Seite neu laden.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Proxy-Datenschutzrichtlinie",
"reload": "Neu laden",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Token generieren",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "In URL einbinden",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Dokumentation",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Übertragungsart",
"password": "Passwort",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Autorisierungsverfahren",
"username": "Nutzername"
@@ -124,6 +148,7 @@
"created": "Sammlung erstellt",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Sammlung bearbeiten",
"import_or_create": "Import or create a collection",
"invalid_name": "Bitte gib einen gültigen Namen für die Sammlung an",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Sammlungsname soll mindestens 3 Zeichen lang sein",
"new": "Neue Sammlung",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Sammlung umbenannt",
"request_in_use": "Anfrage wird ausgeführt",
"save_as": "Speichern als",
@@ -151,6 +178,7 @@
"remove_folder": "Möchtest Du diesen Ordner wirklich dauerhaft löschen?",
"remove_history": "Möchtest Du wirklich den gesamten Verlauf dauerhaft löschen?",
"remove_request": "Möchtest Du diese Anfrage wirklich dauerhaft löschen?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Möchtest Du dieses Team wirklich löschen?",
"remove_telemetry": "Möchtest Du die Telemetrie wirklich deaktivieren?",
"request_change": "Möchtest Du diese Anfrage verwerfen? Ungespeicherte Änderungen gehen verloren.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Header {count}",
"message": "Nachricht {count}",
@@ -192,11 +238,13 @@
"profile": "Einloggen um das Profil anzusehen",
"protocols": "Protokolle sind leer",
"schema": "Verbinden mit einem GraphQL-Endpunkt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Teamname leer",
"teams": "Teams sind leer",
"tests": "Es gibt keine Tests für diese Anfrage"
"tests": "Es gibt keine Tests für diese Anfrage",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Zur Globalen Umgebung hinzufügen",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Bitte gib einen gültigen Namen für die Umgebung an",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Variablenliste"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Dieser Browser scheint keine Unterstützung für die vom Server gesendete Ereignisse zu haben.",
"check_console_details": "Einzelheiten findest Du in der Browser-Konsole.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL ist nicht richtig formatiert",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Ein ungültiger Text konnte nicht verschönert werden, JSON-Syntaxfehler beheben und erneut versuchen",
"network_error": "Netzwerkfehler. Bitte versuche es erneut.",
"network_fail": "Anfrage konnte nicht gesendet werden",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Keine Dauer",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Pre-Request-Skripte konnte nicht ausgeführt werden",
"something_went_wrong": "Etwas ist schief gelaufen",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Als JSON exportieren",
"create_secret_gist": "Geheimen Github Gist erstellen",
"failed": "Something went wrong while exporting",
"gist_created": "Gist erstellt",
"require_github": "Melde Dich bei GitHub an, um einen geheimen Gist zu erstellen",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Abonnements",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Der Autorisierungsheader wird automatisch generiert, wenn Du die Anfrage sendest.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Zuerst Dokumentation erstellen",
"network_fail": "Der API-Endpunkt kann nicht erreicht werden. Überprüfe Deine Netzwerkverbindung und versuche es erneut.",
"offline": "Du scheinst offline zu sein. Die Daten in diesem Arbeitsbereich sind möglicherweise nicht aktuell.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Sammlungen importieren",
"curl": "cURL importieren",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importieren fehlgeschlagen",
"from_file": "Import from File",
"from_gist": "Von Github Gist importieren",
"from_gist_description": "Von Github Gist URL importieren",
"from_insomnia": "Von Insomnia importieren",
@@ -331,11 +394,17 @@
"from_postman_description": "Postman-Sammlung importieren",
"from_url": "Von URL importieren",
"gist_url": "Gist-URL eingeben",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Hoppscotch Sammlungsdatei (JSON) importieren",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importieren"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Sammlungen",
"confirm": "Aktion bestätigen",
"customize_request": "Customize Request",
"edit_request": "Anfrage bearbeiten",
"import_export": "Import / Export"
"import_export": "Import / Export",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Link kopieren",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Dauer",
"enter_curl": "cURL eingeben",
"generate_code": "Code generieren",
"generated_code": "Generierter Code",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Header-Liste",
"invalid_name": "Bitte gib einen Namen für die Anfrage an",
"method": "Methode",
@@ -480,12 +552,14 @@
"saved": "Anfrage gespeichert",
"share": "Teilen",
"share_description": "Teile Hoppscotch mit Deinen Freunden",
"share_request": "Share Request",
"stop": "Stop",
"title": "Anfrage",
"type": "Anfragetyp",
"url": "URL",
"variables": "Variablen",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Link kopieren"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Passe Deine Kontoeinstellungen an.",
"account_email_description": "Deine primäre E-Mail-Adresse.",
"account_name_description": "Dies ist Dein Anzeigename.",
"additional": "Additional Settings",
"background": "Hintergrund",
"black_mode": "Schwarz",
"choose_language": "Sprache wählen",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "E-Mail-Adresse bestätigen"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Anfragelink kopieren",
"delete_method": "DELETE-Methode auswählen",
"get_method": "GET-Methode auswählen",
"head_method": "HEAD-Methode auswählen",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "In Sammlungen speichern",
"send_request": "Anfrage senden",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Anfrage"
"title": "Anfrage",
"copy_request_link": "Anfragelink kopieren"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "In die Zwischenablage kopiert",
"deleted": "Gelöscht",
"deprecated": "VERALTET",
@@ -742,10 +836,12 @@
"disconnected": "Getrennt",
"disconnected_from": "Verbindung zu {name} getrennt",
"docs_generated": "Dokumentation erstellt",
"download_failed": "Download failed",
"download_started": "Download gestartet",
"enabled": "Aktiviert",
"file_imported": "Datei importiert",
"finished_in": "Fertig in {duration} ms",
"hide": "Hide",
"history_deleted": "Verlauf gelöscht",
"linewrap": "Zeilen umbrechen",
"loading": "Wird geladen...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Anfragen",
"query": "Anfrage",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Tests",
@@ -807,6 +905,7 @@
"email_do_not_match": "E-Mail-Adresse stimmt nicht mit Deinen Kontodaten überein, bitte kontaktiere den Teameigentümer.",
"exit": "Team verlassen",
"exit_disabled": "Eigentümer können das Team nicht verlassen",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E-Mail-Format ist ungültig",
"invalid_id": "Ungültige Team-ID, bitte kontaktiere den Teameigentümer.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Team gespeichert",
"select_a_team": "Team auswählen",
"success_invites": "Success invites",
"title": "Team",
"we_sent_invite_link": "Einladungen wurden an alle E-Mails verschickt!",
"we_sent_invite_link_description": "Bitte alle eingeladenen Personen, ihren Posteingang zu überprüfen. Klicke auf den Link, um dem Team beizutreten."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Ματαίωση",
"choose_file": "Επιλέξτε ένα αρχείο",
@@ -10,6 +11,7 @@
"connect": "Συνδέω-συωδεομαι",
"connecting": "Connecting",
"copy": "αντίγραφο",
"create": "Create",
"delete": "Διαγράφω",
"disconnect": "Αποσυνδέω",
"dismiss": "Απολύω",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Ωραιοποιώ",
"properties": "Properties",
"remove": "Αφαιρώ",
"rename": "Rename",
"restore": "Επαναφέρω",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Αναζήτηση",
"send": "Στείλετε",
"share": "Share",
"start": "Αρχή",
"starting": "Starting",
"stop": "Να σταματήσει",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "μίλα μαζί μας",
"contact_us": "Επικοινωνήστε μαζί μας",
"cookies": "Cookies",
"copy": "αντίγραφο",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Εργαλεία για προγραμματιστές που βοηθάνε στην ανάπτυξη και συντήρηση του Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Συντομεύσεις πληκτρολογίου",
"name": "Hoppscotch",
"new_version_found": "Βρέθηκε νέα έκδοση. Ανανέωση για ενημέρωση.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Πολιτική απορρήτου μεσολάβησης",
"reload": "Φορτώνω πάλι",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Δημιουργήστε το διακριτικό",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Συμπερίληψη στη διεύθυνση URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Μάθε πως",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Κωδικός πρόσβασης",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Ενδειξη",
"type": "Τύπος εξουσιοδότησης",
"username": "Όνομα χρήστη"
@@ -124,6 +148,7 @@
"created": "Η συλλογή δημιουργήθηκε",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Επεξεργασία Συλλογής",
"import_or_create": "Import or create a collection",
"invalid_name": "Καταχωρίστε ένα έγκυρο όνομα για τη συλλογή",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Νέα συλλογή",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Η συλλογή μετονομάστηκε",
"request_in_use": "Request in use",
"save_as": "Αποθήκευση ως",
@@ -151,6 +178,7 @@
"remove_folder": "Είστε βέβαιοι ότι θέλετε να διαγράψετε οριστικά αυτόν τον φάκελο;",
"remove_history": "Είστε βέβαιοι ότι θέλετε να διαγράψετε οριστικά όλο το ιστορικό;",
"remove_request": "Είστε βέβαιοι ότι θέλετε να διαγράψετε οριστικά αυτό το αίτημα;",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτήν την ομάδα;",
"remove_telemetry": "Είστε βέβαιοι ότι θέλετε να εξαιρεθείτε από την τηλεμετρία;",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Κεφαλίδα {count}",
"message": "Μήνυμα {count}",
@@ -192,11 +238,13 @@
"profile": "Συνδεθείτε για προβολή του προφίλ σας",
"protocols": "Τα πρωτόκολλα είναι κενά",
"schema": "Συνδεθείτε σε ένα τελικό σημείο GraphQL",
"shortcodes": "Τα Shortcodes είναι κενά",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Το όνομα της ομάδας είναι κενό",
"teams": "Οι ομάδες είναι άδειες",
"tests": "Δεν υπάρχουν δοκιμές για αυτό το αίτημα"
"tests": "Δεν υπάρχουν δοκιμές για αυτό το αίτημα",
"shortcodes": "Τα Shortcodes είναι κενά"
},
"environment": {
"add_to_global": "Προσθήκη στο Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Καταχωρίστε ένα έγκυρο όνομα για το περιβάλλον",
"list": "Environment variables",
"my_environments": "Τα Περιβάλλοντα μου",
@@ -232,8 +281,10 @@
"variable_list": "Λίστα μεταβλητών"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Αυτό το πρόγραμμα περιήγησης δεν φαίνεται να υποστηρίζει διακομιστές που έχουν σταλεί συμβάντα.",
"check_console_details": "Ελέγξτε το αρχείο καταγραφής της κονσόλας για λεπτομέρειες.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "Το cURL δεν έχει μορφοποιηθεί σωστά",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Δεν ήταν δυνατή η ομορφιά ενός μη έγκυρου σώματος, η επίλυση σφαλμάτων σύνταξης json και η προσπάθεια ξανά",
"network_error": "Από ότι φαίνεται υπάρχει ένα σφάλμα δικτύου. Παρακαλούμε προσπαθήστε ξανά.",
"network_fail": "Δεν ήταν δυνατή η αποστολή του αιτήματος",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Χωρίς διάρκεια",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Δεν βρέθηκαν αντιστοιχίες",
"page_not_found": "Αυτή η σελίδα δεν βρέθηκε",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Δεν ήταν δυνατή η εκτέλεση του σεναρίου πριν από το αίτημα",
"something_went_wrong": "Κάτι πήγε στραβά",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Εξαγωγή ως JSON",
"create_secret_gist": "Δημιουργήστε μυστική ουσία",
"failed": "Something went wrong while exporting",
"gist_created": "Η ουσία δημιουργήθηκε",
"require_github": "Συνδεθείτε με το GitHub για να δημιουργήσετε μυστική ουσία",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Συνδρομές",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Η κεφαλίδα εξουσιοδότησης θα δημιουργηθεί αυτόματα κατά την αποστολή του αιτήματος.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Δημιουργήστε πρώτα έγγραφα",
"network_fail": "Δεν είναι δυνατή η πρόσβαση στο τελικό σημείο API. Ελέγξτε τη σύνδεση δικτύου και δοκιμάστε ξανά.",
"offline": "Φαίνεται ότι είστε εκτός σύνδεσης. Τα δεδομένα σε αυτόν τον χώρο εργασίας ενδέχεται να μην είναι ενημερωμένα.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Εισαγωγή συλλογών",
"curl": "Εισαγωγή cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Η εισαγωγή απέτυχε",
"from_file": "Import from File",
"from_gist": "Εισαγωγή από το Gist",
"from_gist_description": "Εισαγωγή από Gist URL",
"from_insomnia": "Εισαγωγή από Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Εισαγωγή Συλλογής από Postman",
"from_url": "Εισαγωγή από URL",
"gist_url": "Εισαγάγετε Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Δεν μπορέσαμε να πάρουμε δεδομένα από το url",
"import_from_url_invalid_file_format": "Σφάλμα κατά την εισαγωγή των Συλλογών",
"import_from_url_invalid_type": "Μη υποστηριζόμενος τύπος. Αποδεκτές τιμές είναι 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Η εισαγωγή των Συλλογών ήταν επιτυχής",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Εισαγωγή συλλογών αρχείο JSON Hoppscotch Collections",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Εισαγωγή"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Συλλογές",
"confirm": "Επιβεβαιώνω",
"customize_request": "Customize Request",
"edit_request": "Αίτημα Επεξεργασίας",
"import_export": "Εισαγωγή εξαγωγή"
"import_export": "Εισαγωγή εξαγωγή",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Αντιγραφή συνδέσμου",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Διάρκεια",
"enter_curl": "Εισαγάγετε cURL",
"generate_code": "Δημιουργία κώδικα",
"generated_code": "Παραγόμενος κώδικας",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Λίστα κεφαλίδων",
"invalid_name": "Καταχωρίστε ένα όνομα για το αίτημα",
"method": "Μέθοδος",
@@ -480,12 +552,14 @@
"saved": "Το αίτημα αποθηκεύτηκε",
"share": "Μερίδιο",
"share_description": "Κοινοποίηση Hoppscotch στους φίλους σου",
"share_request": "Share Request",
"stop": "Stop",
"title": "Αίτηση",
"type": "Τύπος αιτήματος",
"url": "URL",
"variables": "Μεταβλητές",
"view_my_links": "Προβολή των links μου"
"view_my_links": "Προβολή των links μου",
"copy_link": "Αντιγραφή συνδέσμου"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Προσαρμόστε τις ρυθμίσεις του λογαριασμού σας.",
"account_email_description": "Η κύρια διεύθυνση email σας.",
"account_name_description": "Αυτό είναι το εμφανιζόμενο όνομά σας.",
"additional": "Additional Settings",
"background": "Ιστορικό",
"black_mode": "Μαύρος",
"choose_language": "Διάλεξε γλώσσα",
@@ -559,14 +634,31 @@
"verified_email": "Επαληθευμένο email",
"verify_email": "Επαλήθευση email"
},
"shortcodes": {
"actions": "Δράσεις",
"created_on": "Created on",
"deleted": "Το Shortcode διαγράφηκε",
"method": "Method",
"not_found": "Το Shortcode δεν βρέθηκε",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Αντιγραφή συνδέσμου αιτήματος",
"delete_method": "Επιλέξτε ΔΙΑΓΡΑΦΗ μεθόδου",
"get_method": "Επιλέξτε μέθοδο GET",
"head_method": "Επιλέξτε μέθοδο HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Αποθήκευση στις Συλλογές",
"send_request": "Στείλε αίτημα",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Αίτηση"
"title": "Αίτηση",
"copy_request_link": "Αντιγραφή συνδέσμου αιτήματος"
},
"response": {
"copy": "Αντιγραφή response στο πρόχειρο",
@@ -735,6 +828,7 @@
"connection_error": "Η Σύνδεση απέτυχε",
"connection_failed": "Αποτυχής Σύνδεση",
"connection_lost": "Η Σύνδεση χάθηκε",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Αντιγράφηκε στο πρόχειρο",
"deleted": "Διαγράφηκε",
"deprecated": "ΚΑΤΑΡΓΗΘΗΚΕ",
@@ -742,10 +836,12 @@
"disconnected": "Ασύνδετος",
"disconnected_from": "Αποσυνδέθηκε από το {name}",
"docs_generated": "Δημιουργήθηκε τεκμηρίωση",
"download_failed": "Download failed",
"download_started": "Η λήψη ξεκίνησε",
"enabled": "Ενεργοποιημένο",
"file_imported": "Το αρχείο εισήχθη",
"finished_in": "Ολοκληρώθηκε σε {duration} ms",
"hide": "Hide",
"history_deleted": "Το ιστορικό διαγράφηκε",
"linewrap": "Τυλίξτε γραμμές",
"loading": "Φόρτωση...",
@@ -756,6 +852,7 @@
"published_error": "Κάτι πήγε στραβά κατα την αποστολή του μηνύματος: {topic} με θέμα: {message}",
"published_message": "Δημοσιευμένο Μηνυμα: {message} με θέμα: {topic}",
"reconnection_error": "Αποτυχία επανασύνδεσης",
"show": "Show",
"subscribed_failed": "Αποτυχία εγγραφής στο Θέμα: {topic}",
"subscribed_success": "Επιτυχία εγγραφής στο Θέμα: {topic}",
"unsubscribed_failed": "Αποτυχία απεγγραφής στο Θέμα: {topic}",
@@ -791,6 +888,7 @@
"queries": "Ερωτήματα",
"query": "Ερώτηση",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Υποδοχή.IO",
"sse": "SSE",
"tests": "Δοκιμές",
@@ -807,6 +905,7 @@
"email_do_not_match": "Το Email δεν ταιριάζει με τις λεπτομέριες του προφιλ σας. Επικοινωνήστε με τον Ιδιοκτήτη της Ομάδας.",
"exit": "Έξοδος από την ομάδα",
"exit_disabled": "Μόνο ο ιδιοκτήτης δεν μπορεί να αποχωρήσει από την ομάδα",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Η μορφή ηλεκτρονικού ταχυδρομείου δεν είναι έγκυρη",
"invalid_id": "Μή εγκυρο αναγνωριστικό ομάδας. Επικοινωνήστε με τον Ιδιοκτήτη της Ομάδας.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Η ομάδα σώθηκε",
"select_a_team": "Επιλογή ομάδας",
"success_invites": "Success invites",
"title": "Της ομάδας",
"we_sent_invite_link": "Στείλαμε έναν σύνδεσμο πρόσκλησης σε όλους!",
"we_sent_invite_link_description": "Ζητήστε από όλους όσους στείλατε πρόσκληση να ελέγξουν τα email τους. Click στον σύνδεσμο για εισαγωγή στην ομάδα."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Δράσεις",
"created_on": "Created on",
"deleted": "Το Shortcode διαγράφηκε",
"method": "Method",
"not_found": "Το Shortcode δεν βρέθηκε",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -33,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Prettify",
"properties": "Properties",
"remove": "Remove",
"rename": "Rename",
"restore": "Restore",
@@ -57,24 +58,6 @@
"new": "Add new",
"star": "Add star"
},
"cookies": {
"modal": {
"new_domain_name": "New domain name",
"set": "Set a cookie",
"cookie_string": "Cookie string",
"enter_cookie_string": "Enter cookie string",
"cookie_name": "Name",
"cookie_value": "Value",
"cookie_path": "Path",
"cookie_expires": "Expires",
"managed_tab": "Managed",
"raw_tab": "Raw",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"empty_domains": "Domain list is empty",
"empty_domain": "Domain is empty",
"no_cookies_in_domain": "No cookies set for this domain"
}
},
"app": {
"chat_with_us": "Chat with us",
"contact_us": "Contact us",
@@ -138,26 +121,28 @@
"generate_token": "Generate Token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Include in URL",
"inherited_from": "Inherited {auth} from parent collection {collection} ",
"learn": "Learn how",
"pass_key_by": "Pass by",
"password": "Password",
"token": "Token",
"type": "Authorization Type",
"username": "Username",
"oauth": {
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect"
}
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Password",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Authorization Type",
"username": "Username"
},
"collection": {
"created": "Collection created",
@@ -172,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "New Collection",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Collection renamed",
"request_in_use": "Request in use",
"save_as": "Save as",
@@ -203,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Header {count}",
"message": "Message {count}",
@@ -233,8 +238,8 @@
"profile": "Login to view your profile",
"protocols": "Protocols are empty",
"schema": "Connect to a GraphQL endpoint to view schema",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Team name empty",
"teams": "You don't belong to any teams",
@@ -274,10 +279,8 @@
"variable": "Variable",
"variable_list": "Variable List"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "This browser doesn't seems to have Server Sent Events support.",
"check_console_details": "Check console log for details.",
"check_how_to_add_origin": "Check how you can add an origin",
@@ -292,6 +295,7 @@
"incorrect_email": "Incorrect email",
"invalid_link": "Invalid link",
"invalid_link_description": "The link you clicked is invalid or expired.",
"invalid_embed_link": "The embed does not exist or is invalid.",
"json_parsing_failed": "Invalid JSON",
"json_prettify_invalid_body": "Couldn't prettify an invalid body, solve json syntax errors and try again",
"network_error": "There seems to be a network error. Please try again.",
@@ -310,10 +314,12 @@
"export": {
"as_json": "Export as JSON",
"create_secret_gist": "Create secret Gist",
"gist_created": "Gist created",
"create_secret_gist_tooltip_text": "Export as secret Gist",
"failed": "Something went wrong while exporting",
"secret_gist_success": "Successfully exported as secret Gist",
"require_github": "Login with GitHub to create secret gist",
"title": "Export",
"failed": "Something went wrong while exporting"
"success": "Successfully exported"
},
"filter": {
"all": "All",
@@ -337,6 +343,9 @@
"subscriptions": "Subscriptions",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -348,6 +357,8 @@
},
"helpers": {
"authorization": "The authorization header will be automatically generated when you send the request.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generate documentation first",
"network_fail": "Unable to reach the API endpoint. Check your network connection or select a different Interceptor and try again.",
"offline": "You're using Hoppscotch offline. Updates will sync when you're online, based on workspace settings.",
@@ -367,7 +378,10 @@
"import": {
"collections": "Import collections",
"curl": "Import cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Error while importing: format not recognized",
"from_file": "Import from File",
"from_gist": "Import from Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -380,23 +394,20 @@
"from_openapi_description": "Import from OpenAPI specification file (YML/JSON)",
"from_postman": "Import from Postman",
"from_postman_description": "Import from Postman collection",
"from_file": "Import from File",
"from_url": "Import from URL",
"gist_url": "Enter Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"title": "Import",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist"
"title": "Import"
},
"inspections": {
"description": "Inspect possible errors",
@@ -435,8 +446,8 @@
"confirm": "Confirm",
"customize_request": "Customize Request",
"edit_request": "Edit Request",
"share_request": "Share Request",
"import_export": "Import / Export"
"import_export": "Import / Export",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -577,6 +588,7 @@
"account_description": "Customize your account settings.",
"account_email_description": "Your primary email address.",
"account_name_description": "This is your display name.",
"additional": "Additional Settings",
"background": "Background",
"black_mode": "Black",
"choose_language": "Choose language",
@@ -621,17 +633,16 @@
"use_experimental_url_bar": "Use experimental URL bar with environment highlighting",
"user": "User",
"verified_email": "Verified email",
"additional": "Additional Settings",
"verify_email": "Verify email"
},
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"customize": "Customize",
"creating_widget": "Creating widget",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
@@ -692,8 +703,8 @@
"save_request": "Save Request",
"save_to_collections": "Save to Collections",
"send_request": "Send Request",
"show_code": "Generate code snippet",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Request"
},
"response": {
@@ -817,16 +828,16 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_to_clipboard": "Copied to clipboard",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copied to clipboard",
"deleted": "Deleted",
"deprecated": "DEPRECATED",
"disabled": "Disabled",
"disconnected": "Disconnected",
"disconnected_from": "Disconnected from {name}",
"docs_generated": "Documentation generated",
"download_started": "Download started",
"download_failed": "Download failed",
"download_started": "Download started",
"enabled": "Enabled",
"file_imported": "File imported",
"finished_in": "Finished in {duration} ms",
@@ -894,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Exit Team",
"exit_disabled": "Only owner cannot exit the team",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Email format is invalid",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -930,13 +942,12 @@
"not_found": "Team not found. Contact your team owner.",
"not_valid_viewer": "You are not a valid viewer. Contact your team owner.",
"parent_coll_move": "Cannot move collection to a child collection",
"success_invites": "Success invites",
"failed_invites": "Failed invites",
"pending_invites": "Pending invites",
"permissions": "Permissions",
"same_target_destination": "Same target and destination",
"saved": "Team saved",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Teams",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -969,4 +980,4 @@
"team": "Team Workspace",
"title": "Workspaces"
}
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Desplazamiento automático",
"cancel": "Cancelar",
"choose_file": "Seleccionar archivo",
@@ -10,6 +11,7 @@
"connect": "Conectar",
"connecting": "Conectando",
"copy": "Copiar",
"create": "Create",
"delete": "Borrar",
"disconnect": "Desconectar",
"dismiss": "Descartar",
@@ -31,6 +33,7 @@
"open_workspace": "Abrir espacio de trabajo",
"paste": "Pegar",
"prettify": "Embellecer",
"properties": "Properties",
"remove": "Eliminar",
"rename": "Rename",
"restore": "Restaurar",
@@ -39,6 +42,7 @@
"scroll_to_top": "Desplazar hacia arriba",
"search": "Buscar",
"send": "Enviar",
"share": "Share",
"start": "Comenzar",
"starting": "Iniciando",
"stop": "Detener",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Habla con nosotros",
"contact_us": "Contáctanos",
"cookies": "Cookies",
"copy": "Copiar",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copiar token de autenticación de usuario",
"developer_option": "Opciones para desarrolladores",
"developer_option_description": "Herramientas para desarrolladores que ayudan en el desarrollo y mantenimiento de Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Atajos de teclado",
"name": "Hoppscotch",
"new_version_found": "Se ha encontrado una nueva versión. Recarga la página para usarla.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Política de privacidad de proxy",
"reload": "Recargar",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generar token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Incluir en la URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Aprender",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pasar por",
"password": "Contraseña",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Tipo de autorización",
"username": "Nombre de usuario"
@@ -124,6 +148,7 @@
"created": "Colección creada",
"different_parent": "No se puede reordenar la colección con un padre diferente",
"edit": "Editar colección",
"import_or_create": "Import or create a collection",
"invalid_name": "Proporciona un nombre válido para la colección.",
"invalid_root_move": "La colección ya está en la raíz",
"moved": "Movido con éxito",
@@ -132,6 +157,8 @@
"name_length_insufficient": "El nombre de la colección debe tener al menos 3 caracteres",
"new": "Nueva colección",
"order_changed": "Orden de colección actualizada",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Colección renombrada",
"request_in_use": "Solicitud en uso",
"save_as": "Guardar como",
@@ -151,6 +178,7 @@
"remove_folder": "¿Estás seguro de que deseas eliminar esta carpeta de forma permanente?",
"remove_history": "¿Estás seguro de que deseas eliminar todo el historial de forma permanente?",
"remove_request": "¿Estás seguro de que deseas eliminar esta solicitud de forma permanente?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "¿Estás seguro de que deseas eliminar este equipo?",
"remove_telemetry": "¿Estás seguro de que deseas darse de baja de la telemetría?",
"request_change": "¿Estás seguro de que deseas descartar la solicitud actual, los cambios no guardados se perderán.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Encabezado {count}",
"message": "Mensaje {count}",
@@ -192,11 +238,13 @@
"profile": "Iniciar sesión para ver tu perfil",
"protocols": "Los protocolos están vacíos",
"schema": "Conectarse a un punto final de GraphQL",
"shortcodes": "Aún no se han creado Shortcodes",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Nombre del equipo vacío",
"teams": "Los equipos están vacíos",
"tests": "No hay pruebas para esta solicitud"
"tests": "No hay pruebas para esta solicitud",
"shortcodes": "Aún no se han creado Shortcodes"
},
"environment": {
"add_to_global": "Añadir a Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Proporciona un nombre válido para el entorno.",
"list": "Environment variables",
"my_environments": "Mis entornos",
@@ -232,8 +281,10 @@
"variable_list": "Lista de variables"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Este navegador no parece ser compatible con los eventos enviados por el servidor.",
"check_console_details": "Consulta el registro de la consola para obtener más detalles.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL no está formateado correctamente",
"danger_zone": "Zona de peligro",
"delete_account": "Tu cuenta es actualmente propietaria en estos equipos:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "No se puede aplicar embellecedor a un cuerpo inválido, resuelve errores de sintaxis json y vuelve a intentarlo",
"network_error": "Parece que hay un error de red. Por favor, inténtalo de nuevo.",
"network_fail": "No se pudo enviar la solicitud",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Sin duración",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No se han encontrado coincidencias",
"page_not_found": "No se ha podido encontrar esta página",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "No se pudo ejecutar el script de solicitud previa",
"something_went_wrong": "Algo salió mal",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportar como JSON",
"create_secret_gist": "Crear un Gist secreto",
"failed": "Something went wrong while exporting",
"gist_created": "Gist creado",
"require_github": "Iniciar sesión con GitHub para crear un Gist secreto",
"title": "Exportar"
@@ -286,6 +341,9 @@
"subscriptions": "Suscripciones",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Tiempo",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "El encabezado de autorización se generará automáticamente cuando se envía la solicitud.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generar la documentación primero",
"network_fail": "No se puede acceder a la API. Comprueba tu conexión de red y vuelve a intentarlo.",
"offline": "Parece estar desconectado. Es posible que los datos de este espacio de trabajo no estén actualizados.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importar colecciones",
"curl": "Importar cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importación fallida",
"from_file": "Import from File",
"from_gist": "Importar desde Gist",
"from_gist_description": "Importar desde URL de Gist",
"from_insomnia": "Importar desde Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Importar desde una colección de Postman",
"from_url": "Importar desde una URL",
"gist_url": "Introduce la URL de Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Importar colecciones desde un archivo JSON de colecciones de Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importar"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "Tienes cambios sin guardar",
"collections": "Colecciones",
"confirm": "Confirmar",
"customize_request": "Customize Request",
"edit_request": "Editar solicitud",
"import_export": "Importación y exportación"
"import_export": "Importación y exportación",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Ya estás suscrito a este tema.",
@@ -449,13 +520,14 @@
"structured": "Estructurado",
"text": "Texto"
},
"copy_link": "Copiar enlace",
"different_collection": "No se pueden reordenar solicitudes de diferentes colecciones",
"duplicated": "Solicitud duplicada",
"duration": "Duración",
"enter_curl": "Ingrese cURL",
"generate_code": "Generar código",
"generated_code": "Código generado",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Lista de encabezados",
"invalid_name": "Proporciona un nombre para la solicitud.",
"method": "Método",
@@ -480,12 +552,14 @@
"saved": "Solicitud guardada",
"share": "Compartir",
"share_description": "Comparte Hoppscotch con tus amigos",
"share_request": "Share Request",
"stop": "Stop",
"title": "Solicitud",
"type": "Tipo de solicitud",
"url": "URL",
"variables": "Variables",
"view_my_links": "Ver mis enlaces"
"view_my_links": "Ver mis enlaces",
"copy_link": "Copiar enlace"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personaliza la configuración de tu cuenta.",
"account_email_description": "Tu dirección de correo electrónico principal.",
"account_name_description": "Este es tu nombre para mostrar.",
"additional": "Additional Settings",
"background": "Fondo",
"black_mode": "Negro",
"choose_language": "Elegir idioma",
@@ -559,14 +634,31 @@
"verified_email": "Correo electrónico verificado",
"verify_email": "Verificar correo electrónico"
},
"shortcodes": {
"actions": "Acciones",
"created_on": "Creado el",
"deleted": "Código corto eliminado",
"method": "Método",
"not_found": "Shortcode no encontrado",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copiar enlace de solicitud",
"delete_method": "Seleccionar método DELETE",
"get_method": "Seleccionar método GET",
"head_method": "Seleccionar método HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Guardar en colecciones",
"send_request": "Enviar solicitud",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Solicitud"
"title": "Solicitud",
"copy_request_link": "Copiar enlace de solicitud"
},
"response": {
"copy": "Copiar la respuesta al portapapeles",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Error de conexión",
"connection_lost": "Conexión perdida",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiado al portapapeles",
"deleted": "Eliminado",
"deprecated": "OBSOLETO",
@@ -742,10 +836,12 @@
"disconnected": "Desconectado",
"disconnected_from": "Desconectado de {name}",
"docs_generated": "Documentación generada",
"download_failed": "Download failed",
"download_started": "Descarga iniciada",
"enabled": "Activado",
"file_imported": "Archivo importado",
"finished_in": "Terminado en {duration} ms",
"hide": "Hide",
"history_deleted": "Historial eliminado",
"linewrap": "Envolver líneas",
"loading": "Cargando...",
@@ -756,6 +852,7 @@
"published_error": "Algo ha ido mal al publicar el mensaje: {topic} al tema: {message}",
"published_message": "Mensaje publicado: {mensaje} al tema: {topic}",
"reconnection_error": "Fallo en la reconexión",
"show": "Show",
"subscribed_failed": "Error al suscribirse al tema: {topic}",
"subscribed_success": "Suscrito con éxito al tema: {topic}",
"unsubscribed_failed": "Error al darse de baja del tema: {topic}",
@@ -791,6 +888,7 @@
"queries": "Consultas",
"query": "Consulta",
"schema": "Esquema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Pruebas",
@@ -807,6 +905,7 @@
"email_do_not_match": "El correo electrónico no coincide con los datos de tu cuenta. Ponte en contacto con el propietario de tu equipo.",
"exit": "Salir del equipo",
"exit_disabled": "Solo el propietario puede salir del equipo",
"failed_invites": "Failed invites",
"invalid_coll_id": "Identificador de colección no válido",
"invalid_email_format": "El formato de correo electrónico no es válido",
"invalid_id": "Identificador de equipo inválido. Ponte en contacto con el propietario de tu equipo.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Equipo guardado",
"select_a_team": "Seleccionar un equipo",
"success_invites": "Success invites",
"title": "Equipos",
"we_sent_invite_link": "¡Hemos enviado un enlace de invitación a todos los invitados!",
"we_sent_invite_link_description": "Pide a todos los invitados que revisen tu bandeja de entrada. Haz clic en el enlace para unirse al equipo."
@@ -879,5 +979,14 @@
"personal": "Mi espacio de trabajo",
"team": "Espacio de trabajo en equipo",
"title": "Espacios de trabajo"
},
"shortcodes": {
"actions": "Acciones",
"created_on": "Creado el",
"deleted": "Código corto eliminado",
"method": "Método",
"not_found": "Shortcode no encontrado",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Peruuttaa",
"choose_file": "Valitse tiedosto",
@@ -10,6 +11,7 @@
"connect": "Kytkeä",
"connecting": "Connecting",
"copy": "Kopio",
"create": "Create",
"delete": "Poistaa",
"disconnect": "Katkaista",
"dismiss": "Hylkää",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Koristella",
"properties": "Properties",
"remove": "Poista",
"rename": "Rename",
"restore": "Palauttaa",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Hae",
"send": "Lähettää",
"share": "Share",
"start": "alkaa",
"starting": "Starting",
"stop": "Lopettaa",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Juttele kanssamme",
"contact_us": "Ota meihin yhteyttä",
"cookies": "Cookies",
"copy": "Kopio",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Pikanäppäimet",
"name": "Hoppscotch",
"new_version_found": "Uusi versio löytyi. Päivitä päivittääksesi.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Välityspalvelimen tietosuojakäytäntö",
"reload": "Lataa uudelleen",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Luo tunnus",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Sisällytä URL -osoitteeseen",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Opi kuinka",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Salasana",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Valtuustyyppi",
"username": "Käyttäjätunnus"
@@ -124,6 +148,7 @@
"created": "Kokoelma luotu",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Muokkaa kokoelmaa",
"import_or_create": "Import or create a collection",
"invalid_name": "Anna kokoelmalle kelvollinen nimi",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Uusi kokoelma",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Kokoelma nimetty uudelleen",
"request_in_use": "Request in use",
"save_as": "Tallenna nimellä",
@@ -151,6 +178,7 @@
"remove_folder": "Haluatko varmasti poistaa tämän kansion pysyvästi?",
"remove_history": "Haluatko varmasti poistaa koko historian pysyvästi?",
"remove_request": "Haluatko varmasti poistaa tämän pyynnön pysyvästi?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Haluatko varmasti poistaa tämän ryhmän?",
"remove_telemetry": "Haluatko varmasti poistaa telemetrian käytöstä?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Otsikko {count}",
"message": "Viesti {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokollat ovat tyhjiä",
"schema": "Muodosta yhteys GraphQL -päätepisteeseen",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Joukkueen nimi tyhjä",
"teams": "Joukkueet ovat tyhjiä",
"tests": "Tätä pyyntöä ei ole testattu"
"tests": "Tätä pyyntöä ei ole testattu",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Anna ympäristölle kelvollinen nimi",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Muuttujien luettelo"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Tämä selain ei näytä tukevan palvelimen lähettämiä tapahtumia.",
"check_console_details": "Katso lisätietoja konsolilokista.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL ei ole alustettu oikein",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Virheellistä runkoa ei voitu määrittää, ratkaista json -syntaksivirheitä ja yrittää uudelleen",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Pyyntöä ei voitu lähettää",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Ei kestoa",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Ennakkopyyntöskriptiä ei voitu suorittaa",
"something_went_wrong": "Jotain meni pieleen",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Vie JSON -muodossa",
"create_secret_gist": "Luo salainen ydin",
"failed": "Something went wrong while exporting",
"gist_created": "Gist luotu",
"require_github": "Kirjaudu sisään GitHubilla luodaksesi salaisen sisällön",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Tilaukset",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Valtuutusotsikko luodaan automaattisesti, kun lähetät pyynnön.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Luo asiakirjat ensin",
"network_fail": "Sovellusliittymän päätepistettä ei voi saavuttaa. Tarkista verkkoyhteys ja yritä uudelleen.",
"offline": "Näytät olevan offline -tilassa. Tämän työtilan tiedot eivät ehkä ole ajan tasalla.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Tuo kokoelmia",
"curl": "Tuo cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Tuonti epäonnistui",
"from_file": "Import from File",
"from_gist": "Tuo Gististä",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Anna Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Tuonti"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Kokoelmat",
"confirm": "Vahvistaa",
"customize_request": "Customize Request",
"edit_request": "Muokkaa pyyntöä",
"import_export": "Tuonti ja vienti"
"import_export": "Tuonti ja vienti",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopioi linkki",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Kesto",
"enter_curl": "Kirjoita cURL",
"generate_code": "Luo koodi",
"generated_code": "Luotu koodi",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Otsikkoluettelo",
"invalid_name": "Anna pyynnölle nimi",
"method": "Menetelmä",
@@ -480,12 +552,14 @@
"saved": "Pyyntö tallennettu",
"share": "Jaa",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Pyyntö",
"type": "Pyynnön tyyppi",
"url": "URL -osoite",
"variables": "Muuttujat",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopioi linkki"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Muokkaa tilisi asetuksia.",
"account_email_description": "Ensisijainen sähköpostiosoitteesi.",
"account_name_description": "Tämä on näyttönimesi.",
"additional": "Additional Settings",
"background": "Tausta",
"black_mode": "Musta",
"choose_language": "Valitse kieli",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopioi pyyntölinkki",
"delete_method": "Valitse POISTA menetelmä",
"get_method": "Valitse GET -menetelmä",
"head_method": "Valitse HEAD -menetelmä",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Tallenna kokoelmiin",
"send_request": "Lähetä pyyntö",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Pyyntö"
"title": "Pyyntö",
"copy_request_link": "Kopioi pyyntölinkki"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Kopioitu leikepöydälle",
"deleted": "Poistettu",
"deprecated": "POISTETTU",
@@ -742,10 +836,12 @@
"disconnected": "Yhteys katkaistu",
"disconnected_from": "Yhteys katkaistu: {name}",
"docs_generated": "Dokumentaatio luotu",
"download_failed": "Download failed",
"download_started": "Lataus aloitettu",
"enabled": "Käytössä",
"file_imported": "Tiedosto tuotu",
"finished_in": "Valmis {duration} ms",
"hide": "Hide",
"history_deleted": "Historia poistettu",
"linewrap": "Kääri linjat",
"loading": "Ladataan...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Kyselyt",
"query": "Kysely",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Pistorasia.IO",
"sse": "SSE",
"tests": "Testit",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Poistu tiimistä",
"exit_disabled": "Vain omistaja ei voi poistua tiimistä",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Sähköpostin muoto on virheellinen",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Joukkue tallennettu",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Joukkueet",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Annuler",
"choose_file": "Choisir un fichier",
@@ -10,6 +11,7 @@
"connect": "Connecter",
"connecting": "Connecting",
"copy": "Copier",
"create": "Create",
"delete": "Supprimer",
"disconnect": "Déconnecter",
"dismiss": "Rejeter",
@@ -31,6 +33,7 @@
"open_workspace": "Ouvrir un espace de travail",
"paste": "Coller",
"prettify": "Formater",
"properties": "Properties",
"remove": "Supprimer",
"rename": "Rename",
"restore": "Restaurer",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Chercher",
"send": "Envoyer",
"share": "Share",
"start": "Démarrer",
"starting": "Starting",
"stop": "Arrêter",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Discuter avec nous",
"contact_us": "Nous contacter",
"cookies": "Cookies",
"copy": "Copier",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copier le jeton d'authentification de l'utilisateur",
"developer_option": "Options pour les développeurs",
"developer_option_description": "Des outils pour les développeurs qui aident au développement et à la maintenance de Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Raccourcis clavier",
"name": "Hoppscotch",
"new_version_found": "Nouvelle version trouvée. Actualiser pour mettre à jour.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Politique de confidentialité du proxy",
"reload": "Recharger",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Générer un jeton",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Inclure dans l'URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Apprendre comment",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Mot de passe",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Jeton",
"type": "Type d'autorisation",
"username": "Nom d'utilisateur"
@@ -124,6 +148,7 @@
"created": "Collection créée",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Modifier la collection",
"import_or_create": "Import or create a collection",
"invalid_name": "Veuillez fournir un nom valide pour la collection",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Le nom de la collection doit comporter au moins 3 caractères",
"new": "Nouvelle collection",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Collection renommée",
"request_in_use": "Demande en cours d'utilisation",
"save_as": "Enregistrer sous",
@@ -151,6 +178,7 @@
"remove_folder": "Voulez-vous vraiment supprimer définitivement ce dossier ?",
"remove_history": "Voulez-vous vraiment supprimer définitivement tout l'historique ?",
"remove_request": "Voulez-vous vraiment supprimer définitivement cette requête ?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Voulez-vous vraiment supprimer cette équipe ?",
"remove_telemetry": "Êtes-vous sûr de vouloir désactiver la télémétrie ?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "En-tête {count}",
"message": "Message {compte}",
@@ -192,11 +238,13 @@
"profile": "Connectez-vous pour voir votre profil",
"protocols": "Les protocoles sont vides",
"schema": "Se connecter à un point de terminaison GraphQL",
"shortcodes": "Les shortcodes sont vides",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Nom de l'équipe vide",
"teams": "Les équipes sont vides",
"tests": "Il n'y a pas de tests pour cette requête"
"tests": "Il n'y a pas de tests pour cette requête",
"shortcodes": "Les shortcodes sont vides"
},
"environment": {
"add_to_global": "Ajouter dans Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Veuillez fournir un nom valide pour l'environnement",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Liste des variables"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Ce navigateur ne semble pas prendre en charge les événements envoyés par le serveur.",
"check_console_details": "Consultez le journal de la console pour plus de détails.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL n'est pas formaté correctement",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Impossible de formater un corps non valide, résolvez les erreurs de syntaxe json et réessayez",
"network_error": "Il semble y avoir une erreur de réseau. Veuillez réessayer.",
"network_fail": "Impossible d'envoyer la requête",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Pas de durée",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Aucune correspondance trouvée",
"page_not_found": "Cette page n'a pas pu être trouvée",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Impossible d'exécuter le script de pré-requête",
"something_went_wrong": "Quelque chose s'est mal passé",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exporter au format JSON",
"create_secret_gist": "Créer un Gist secret",
"failed": "Something went wrong while exporting",
"gist_created": "Gist créé",
"require_github": "Connectez-vous avec GitHub pour créer un Gist secret",
"title": "Exportation"
@@ -286,6 +341,9 @@
"subscriptions": "Abonnements",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "L'en-tête d'autorisation sera généré automatiquement lors de l'envoi de la requête.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Générez d'abord la documentation",
"network_fail": "Impossible d'atteindre le point de terminaison de l'API. Vérifiez votre connexion réseau et réessayez.",
"offline": "Vous semblez être hors ligne. Les données de cet espace de travail peuvent ne pas être à jour.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importer des collections",
"curl": "Importer en cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Échec de l'importation",
"from_file": "Import from File",
"from_gist": "Importer depuis Gist",
"from_gist_description": "Importer depuis un lien Gist",
"from_insomnia": "Importer depuis Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import depuis une collection Postman",
"from_url": "Importer depuis une URL",
"gist_url": "Entrez l'URL principale",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Impossible d'obtenir des données à partir de l'url.",
"import_from_url_invalid_file_format": "Erreur lors de l'importation de collections",
"import_from_url_invalid_type": "Type non supporté. Les valeurs acceptées sont 'hoppscotch', 'openapi', 'postman', 'insomnia'.",
"import_from_url_success": "Collections Importées",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Importer des collections depuis un fichier JSON Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importer"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Collections",
"confirm": "Confirmer",
"customize_request": "Customize Request",
"edit_request": "Modifier la requête",
"import_export": "Importer / Exporter"
"import_export": "Importer / Exporter",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structuré",
"text": "Texte"
},
"copy_link": "Copier le lien",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Durée",
"enter_curl": "Entrer cURL",
"generate_code": "Générer le code",
"generated_code": "Code généré",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Liste des en-têtes",
"invalid_name": "Veuillez fournir un nom pour la requête",
"method": "Méthode",
@@ -480,12 +552,14 @@
"saved": "Requête enregistrée",
"share": "Partager",
"share_description": "Partagez Hoppscotch avec vos amis",
"share_request": "Share Request",
"stop": "Stop",
"title": "Requête",
"type": "Type de requête",
"url": "URL",
"variables": "Variables",
"view_my_links": "Voir mes liens"
"view_my_links": "Voir mes liens",
"copy_link": "Copier le lien"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personnalisez les paramètres de votre compte.",
"account_email_description": "Votre adresse e-mail principale.",
"account_name_description": "Ceci est votre nom d'affichage.",
"additional": "Additional Settings",
"background": "Fond",
"black_mode": "Noir",
"choose_language": "Choisissez la langue",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Vérifier l'email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Créé le",
"deleted": "Shortcode supprimé",
"method": "Méthode",
"not_found": "Shortcode non trouvé",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copier le lien de requête",
"delete_method": "Sélectionnez la méthode DELETE",
"get_method": "Sélectionnez la méthode GET",
"head_method": "Sélectionnez la méthode HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Enregistrer dans les collections",
"send_request": "Envoyer la requête",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Requête"
"title": "Requête",
"copy_request_link": "Copier le lien de requête"
},
"response": {
"copy": "Copier la réponse dans le presse-papiers",
@@ -735,6 +828,7 @@
"connection_error": "Échec de la connexion",
"connection_failed": "La connexion a échoué",
"connection_lost": "Connexion perdue",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copié dans le presse-papier",
"deleted": "Supprimé",
"deprecated": "DÉCONSEILLÉ",
@@ -742,10 +836,12 @@
"disconnected": "Déconnecté",
"disconnected_from": "Déconnecté de {name}",
"docs_generated": "Documentation générée",
"download_failed": "Download failed",
"download_started": "Téléchargement commencé",
"enabled": "Active",
"file_imported": "Fichier importé",
"finished_in": "Terminé en {duration} ms",
"hide": "Hide",
"history_deleted": "Historique supprimé",
"linewrap": "Retour à la ligne",
"loading": "Chargement...",
@@ -756,6 +852,7 @@
"published_error": "Quelque chose s'est mal passé lors de la publication du message : {topic} dans le sujet : {message}",
"published_message": "Message publié : {message} au sujet : {topic}",
"reconnection_error": "Échec de la reconnexion",
"show": "Show",
"subscribed_failed": "Échec de l'inscription au sujet : {topic}",
"subscribed_success": "Inscription réussie au sujet : {topic}",
"unsubscribed_failed": "Échec de la désinscription du sujet : {topic}",
@@ -791,6 +888,7 @@
"queries": "Requêtes",
"query": "Requête",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "ESS",
"tests": "Tests",
@@ -807,6 +905,7 @@
"email_do_not_match": "L'email ne correspond pas aux détails de votre compte. Contactez le propriétaire de votre équipe.",
"exit": "Quitter l'équipe",
"exit_disabled": "Seul le propriétaire ne peut pas quitter l'équipe",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Le format de l'e-mail n'est pas valide",
"invalid_id": "L'email ne correspond pas aux détails de votre compte. Contactez le propriétaire de votre équipe.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Équipe enregistrée",
"select_a_team": "Choisir une équipe",
"success_invites": "Success invites",
"title": "Équipes",
"we_sent_invite_link": "Nous avons envoyé un lien d'invitation à tous les invités !",
"we_sent_invite_link_description": "Demandez à tous les invités de vérifier leur boîte de réception. Cliquez sur le lien pour rejoindre l'équipe."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Créé le",
"deleted": "Shortcode supprimé",
"method": "Méthode",
"not_found": "Shortcode non trouvé",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "לְבַטֵל",
"choose_file": "בחר קובץ",
@@ -10,6 +11,7 @@
"connect": "לְחַבֵּר",
"connecting": "Connecting",
"copy": "עותק",
"create": "Create",
"delete": "לִמְחוֹק",
"disconnect": "לְנַתֵק",
"dismiss": "לשחרר",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "לְיַפּוֹת",
"properties": "Properties",
"remove": "לְהַסִיר",
"rename": "Rename",
"restore": "לשחזר",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "לחפש",
"send": "לִשְׁלוֹחַ",
"share": "Share",
"start": "הַתחָלָה",
"starting": "Starting",
"stop": "תפסיק",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "שוחח עימנו",
"contact_us": "צור קשר",
"cookies": "Cookies",
"copy": "עותק",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "קיצורי דרך במקלדת",
"name": "הופסקוץ '",
"new_version_found": "נמצאה גרסה חדשה. רענן לעדכון.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "מדיניות הפרטיות של פרוקסי",
"reload": "לִטעוֹן מִחָדָשׁ",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "צור אסימון",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "כלול בכתובת האתר",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "ללמוד איך",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "סיסמה",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "אֲסִימוֹן",
"type": "סוג הרשאה",
"username": "שם משתמש"
@@ -124,6 +148,7 @@
"created": "אוסף נוצר",
"different_parent": "Cannot reorder collection with different parent",
"edit": "ערוך אוסף",
"import_or_create": "Import or create a collection",
"invalid_name": "אנא ספק שם תקף לאוסף",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "קולקציה חדשה",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "שם האוסף שונה",
"request_in_use": "Request in use",
"save_as": "שמור כ",
@@ -151,6 +178,7 @@
"remove_folder": "האם אתה בטוח שברצונך למחוק תיקיה זו לצמיתות?",
"remove_history": "האם אתה בטוח שברצונך למחוק לצמיתות את כל ההיסטוריה?",
"remove_request": "האם אתה בטוח שברצונך למחוק בקשה זו לצמיתות?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "האם אתה בטוח שברצונך למחוק את הצוות הזה?",
"remove_telemetry": "האם אתה בטוח שברצונך לבטל את הסכמתך לטלמטריה?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "כותרת {count}",
"message": "הודעה {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "הפרוטוקולים ריקים",
"schema": "התחבר לנקודת קצה של GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "שם הקבוצה ריק",
"teams": "הקבוצות ריקות",
"tests": "אין בדיקות לבקשה זו"
"tests": "אין בדיקות לבקשה זו",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "אנא ספק שם חוקי לסביבה",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "רשימת משתנים"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "נראה שלדפדפן זה אין תמיכה באירועי שרת נשלח.",
"check_console_details": "בדוק את יומן המסוף לפרטים.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL אינו בפורמט תקין",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "לא ניתן היה לייפות גוף לא חוקי, לפתור שגיאות תחביר של json ולנסות שוב",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "לא ניתן היה לשלוח בקשה",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "אין משך זמן",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "לא ניתן להפעיל סקריפט של בקשה מראש",
"something_went_wrong": "משהו השתבש",
@@ -260,6 +314,7 @@
"export": {
"as_json": "ייצא כ- JSON",
"create_secret_gist": "צור גיסט סודי",
"failed": "Something went wrong while exporting",
"gist_created": "גיסט נוצר",
"require_github": "התחבר עם GitHub כדי ליצור תמצית סודית",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "מנויים",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "כותרת ההרשאה תיווצר אוטומטית בעת שליחת הבקשה.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "צור קודם כל תיעוד",
"network_fail": "לא ניתן להגיע לנקודת הסיום של ה- API. בדוק את חיבור הרשת שלך ונסה שוב.",
"offline": "נראה שאתה מחובר לאינטרנט. יתכן שהנתונים בסביבת עבודה זו אינם מעודכנים.",
@@ -316,7 +376,10 @@
"import": {
"collections": "ייבוא אוספים",
"curl": "ייבא cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "הייבוא נכשל",
"from_file": "Import from File",
"from_gist": "ייבוא מ- Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "הזן Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "יְבוּא"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "אוספים",
"confirm": "לְאַשֵׁר",
"customize_request": "Customize Request",
"edit_request": "ערוך בקשה",
"import_export": "יבוא ויצוא"
"import_export": "יבוא ויצוא",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "העתק קישור",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "מֶשֶׁך",
"enter_curl": "הזן cURL",
"generate_code": "צור קוד",
"generated_code": "קוד שנוצר",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "רשימת כותרות",
"invalid_name": "אנא ספק שם לבקשה",
"method": "שיטה",
@@ -480,12 +552,14 @@
"saved": "הבקשה נשמרה",
"share": "לַחֲלוֹק",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "בַּקָשָׁה",
"type": "סוג בקשה",
"url": "כתובת URL",
"variables": "משתנים",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "העתק קישור"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "התאם אישית את הגדרות החשבון שלך.",
"account_email_description": "כתובת הדוא\"ל הראשית שלך.",
"account_name_description": "זהו שם התצוגה שלך.",
"additional": "Additional Settings",
"background": "רקע כללי",
"black_mode": "שָׁחוֹר",
"choose_language": "בחר שפה",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "העתק קישור לבקשה",
"delete_method": "בחר שיטת DELETE",
"get_method": "בחר שיטת GET",
"head_method": "בחר שיטת HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "שמור באוספים",
"send_request": "שלח בקשה",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "בַּקָשָׁה"
"title": "בַּקָשָׁה",
"copy_request_link": "העתק קישור לבקשה"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "הועתק ללוח",
"deleted": "נמחק",
"deprecated": "מופחת",
@@ -742,10 +836,12 @@
"disconnected": "מְנוּתָק",
"disconnected_from": "נותק מ- {name}",
"docs_generated": "נוצר תיעוד",
"download_failed": "Download failed",
"download_started": "ההורדה החלה",
"enabled": "מופעל",
"file_imported": "הקובץ מיובא",
"finished_in": "הסתיים תוך {duration} אלפיות השנייה",
"hide": "Hide",
"history_deleted": "ההיסטוריה נמחקה",
"linewrap": "עוטפים קווים",
"loading": "טעינה...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "שאילתות",
"query": "שאילתא",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "בדיקות",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "יציאה מצוות",
"exit_disabled": "רק הבעלים אינו יכול לצאת מהצוות",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "פורמט הדוא\"ל אינו חוקי",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "הקבוצה ניצלה",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "צוותים",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,883 +0,0 @@
{
"action": {
"autoscroll": "स्वतः स्क्रॉल",
"cancel": "रद्द करें",
"choose_file": "फ़ाइल चुनें",
"clear": "साफ़",
"clear_all": "सभी साफ करें",
"clear_history": "Clear all History",
"close": "बंद करे",
"connect": "कनेक्ट करें",
"connecting": "Connecting",
"copy": "कॉपी",
"delete": "हटाएं",
"disconnect": "डिस्कनेक्ट",
"dismiss": "खारिज करें",
"dont_save": "मत बचाओ",
"download_file": "फ़ाइल डाउनलोड करें",
"drag_to_reorder": "व्यवस्थित करने के लिए घसीटे",
"duplicate": "नकल करें",
"edit": "संपादित करें",
"filter": "फ़िल्टर प्रतिक्रिया",
"go_back": "वापस जाओ",
"go_forward": "Go forward",
"group_by": "Group by",
"label": "लेबल",
"learn_more": "और अधिक जानें",
"less": "कम",
"more": "अधिक",
"new": "नया",
"no": "स्टार जोड़ें",
"open_workspace": "कार्यक्षेत्र खोलें",
"paste": "पेस्ट",
"prettify": "सुंदर करे",
"remove": "हटाओ",
"rename": "Rename",
"restore": "पुनर्स्थापित करें",
"save": "बचाएं",
"scroll_to_bottom": "नीचे स्क्रॉल करें",
"scroll_to_top": "शीर्ष तक स्क्रॉल करें",
"search": "खोज",
"send": "भेजें ",
"start": "प्रारंभ",
"starting": "Starting",
"stop": "रोकें",
"to_close": "बंद करने के लिए",
"to_navigate": "नेविगेट करने के लिए",
"to_select": "चुनने के लिए",
"turn_off": "बंद करें",
"turn_on": "चालू करें",
"undo": "पूर्ववत",
"yes": "हां"
},
"add": {
"new": "नया जोड़ें",
"star": "स्टार जोड़ें"
},
"app": {
"chat_with_us": "हमारे साथ चैट करें",
"contact_us": "हमसे संपर्क करें",
"copy": "कॉपी करें",
"copy_user_id": "उपयोगकर्ता प्रामाणिक टोकन कॉपी करें",
"developer_option": "डेवलपर विकल्प",
"developer_option_description": "डेवलपर टूल जो Hoppscotch के विकास और रखरखाव में मदद करता है",
"discord": "Discord",
"documentation": "दस्तावेज़ीकरण",
"github": "GitHub",
"help": "सहायता और प्रतिक्रिया",
"home": "घर",
"invite": "आमंत्रित करें",
"invite_description": "हॉप्सकॉच एक ओपन सोर्स एपीआई डेवलपमेंट इकोसिस्टम है। हमने आपके एपीआई बनाने और प्रबंधित करने के लिए एक सरल और सहज इंटरफ़ेस डिज़ाइन किया है। हॉप्सकॉच एक ऐसा टूल है जो आपको अपने एपीआई बनाने, परीक्षण, दस्तावेज़ और साझा करने में मदद करता है।",
"invite_your_friends": "अपने दोस्तों को इनवाइट करें",
"join_discord_community": "हमारे डिस्कॉर्ड समुदाय में शामिल हों",
"keyboard_shortcuts": "कीबोर्ड शॉर्टकट",
"name": "हॉप्सकॉच",
"new_version_found": "नया संस्करण मिला। अपडेट करने के लिए रिफ्रेश करें।",
"options": "विकल्प",
"proxy_privacy_policy": "प्रॉक्सी गोपनीयता नीति",
"reload": "पुनः लोड करें",
"search": "खोज",
"share": "बाँट",
"shortcuts": "शॉर्टकट",
"social_description": "Follow us on social media to stay updated with the latest news, updates and releases.",
"social_links": "Social links",
"spotlight": "स्पॉटलाइट",
"status": "स्थिति",
"status_description": "वेबसाइट की स्थिति जांचें",
"terms_and_privacy": "शर्तें और गोपनीयता",
"twitter": "Twitter",
"type_a_command_search": "कमांड टाइप करें या सर्च करें...",
"we_use_cookies": "हम कुकीज़ का उपयोग करते हैं",
"whats_new": "नया क्या है?",
"wiki": "विकी"
},
"auth": {
"account_exists": "खाता अलग-अलग क्रेडेंशियल के साथ मौजूद है - दोनों खातों को जोड़ने के लिए लॉगिन करें",
"all_sign_in_options": "सभी साइन इन विकल्प",
"continue_with_email": "ईमेल के साथ जारी रखें",
"continue_with_github": "GitHub के साथ जारी रखें",
"continue_with_google": "Google के साथ जारी रखें",
"continue_with_microsoft": "Microsoft के साथ जारी रखें",
"email": "ईमेल",
"logged_out": "लॉग आउट",
"login": "लॉग इन",
"login_success": "सफलतापूर्वक लॉग इन किया",
"login_to_hoppscotch": "हॉप्सकॉच में लॉगिन करें",
"logout": "लॉगआउट",
"re_enter_email": "ईमेल दोबारा दर्ज करें",
"send_magic_link": "मैजिक लिंक भेजें",
"sync": "सिंक",
"we_sent_magic_link": "हमने आपको एक मैजिक लिंक भेजा है!",
"we_sent_magic_link_description": "अपना इनबॉक्स जांचें - हमने {email} पर एक ईमेल भेजा है। इसमें एक जादुई लिंक है जो आपको लॉग इन करेगा।"
},
"authorization": {
"generate_token": "टोकन जनरेट करें",
"include_in_url": "URL में शामिल करें",
"learn": "जानें कैसे",
"pass_key_by": "पास करें",
"password": "पासवर्ड",
"token": "टोकन",
"type": "प्राधिकरण प्रकार",
"username": "उपयोगकर्ता नाम"
},
"collection": {
"created": "संग्रह बनाया गया",
"different_parent": "Cannot reorder collection with different parent",
"edit": "संग्रह संपादित करें",
"invalid_name": "कृपया संग्रह के लिए एक नाम प्रदान करें",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
"my_collections": "मेरे संग्रह",
"name": "मेरा नया संग्रह",
"name_length_insufficient": "संग्रह का नाम कम से कम 3 वर्णों का होना चाहिए",
"new": "नया संग्रह",
"order_changed": "Collection Order Updated",
"renamed": "संग्रह का नाम बदला गया",
"request_in_use": "रिक्वेस्ट इन यूज़",
"save_as": "इस रूप में सेव करें",
"save_to_collection": "Save to Collection",
"select": "एक संग्रह का चयन करें",
"select_location": "स्थान चुनें",
"select_team": "एक टीम चुनें",
"team_collections": "टीम संग्रह"
},
"confirm": {
"close_unsaved_tab": "Are you sure you want to close this tab?",
"close_unsaved_tabs": "Are you sure you want to close all tabs? {count} unsaved tabs will be lost.",
"exit_team": "क्या आप वाकई इस टीम को छोड़ना चाहते हैं?",
"logout": "क्या आप वाकई लॉगआउट करना चाहते हैं?",
"remove_collection": "क्या आप वाकई इस संग्रह को स्थायी रूप से हटाना चाहते हैं?",
"remove_environment": "क्या आप वाकई इस परिवेश को स्थायी रूप से हटाना चाहते हैं?",
"remove_folder": "क्या आप वाकई इस फ़ोल्डर को स्थायी रूप से हटाना चाहते हैं?",
"remove_history": "क्या आप वाकई सभी इतिहास को स्थायी रूप से हटाना चाहते हैं?",
"remove_request": "क्या आप वाकई इस अनुरोध को स्थायी रूप से हटाना चाहते हैं?",
"remove_team": "क्या आप वाकई इस टीम को हटाना चाहते हैं?",
"remove_telemetry": "क्या आप वाकई टेलीमेट्री से ऑप्ट-आउट करना चाहते हैं?",
"request_change": "क्या आप वाकई वर्तमान अनुरोध को छोड़ना चाहते हैं, सहेजे नहीं गए परिवर्तन खो जाएंगे।",
"save_unsaved_tab": "Do you want to save changes made in this tab?",
"sync": "क्या आप अपने कार्यक्षेत्र को क्लाउड से पुनर्स्थापित करना चाहेंगे? यह आपकी स्थानीय प्रगति को त्याग देगा।"
},
"context_menu": {
"add_parameters": "Add to parameters",
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"count": {
"header": "हेडर {count}",
"message": "मैसेज {count}",
"parameter": "पैरामीटर {count}",
"protocol": "प्रोटोकॉल {count}",
"value": "मान {count}",
"variable": "वेरिएबल {count}"
},
"documentation": {
"generate": "दस्तावेज़ीकरण उत्पन्न करें",
"generate_message": "चलते-फिरते API दस्तावेज़ बनाने के लिए कोई भी Hoppscotch संग्रह आयात करें।"
},
"empty": {
"authorization": "यह अनुरोध किसी प्राधिकरण का उपयोग नहीं करता",
"body": "इस अनुरोध में कोई बॉडी नहीं है",
"collection": "संग्रह खाली है",
"collections": "संग्रह खाली हैं",
"documentation": "दस्तावेज़ीकरण देखने के लिए GraphQL से कनेक्ट करें",
"endpoint": "समापन बिंदु खाली नहीं हो सकता",
"environments": "वातावरण खाली हैं",
"folder": " फ़ोल्डर खाली है",
"headers": " इस अनुरोध का कोई हेडर नहीं है",
"history": " इतिहास खाली है",
"invites": " आमंत्रण सूची खाली है",
"members": " टीम खाली है",
"parameters": " इस अनुरोध का कोई पैरामीटर नहीं है",
"pending_invites": " इस टीम के लिए कोई आमंत्रण लंबित नहीं है",
"profile": " अपना प्रोफ़ाइल देखने के लिए लॉगिन करें",
"protocols": " प्रोटोकॉल खाली हैं",
"schema": " स्कीमा देखने के लिए ग्राफ़क्यूएल एंडपॉइंट से कनेक्ट करें",
"shortcodes": " शॉर्टकोड खाली हैं",
"subscription": "Subscriptions are empty",
"team_name": " टीम का नाम खाली",
"teams": " आप किसी भी टीम से संबंधित नहीं हैं",
"tests": " इस अनुरोध के लिए कोई परीक्षण नहीं हैं"
},
"environment": {
"add_to_global": " ग्लोबल में जोड़ें",
"added": " पर्यावरण अतिरिक्त",
"create_new": " नया वातावरण बनाएं",
"created": " पर्यावरण बनाया",
"deleted": " पर्यावरण विलोपन",
"duplicated": "Environment duplicated",
"edit": " पर्यावरण संपादित करें",
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"invalid_name": " कृपया पर्यावरण के लिए एक नाम प्रदान करें",
"list": "Environment variables",
"my_environments": "My Environments",
"name": "Name",
"nested_overflow": " नेस्टेड पर्यावरण चर 10 स्तरों तक सीमित हैं",
"new": " नया वातावरण",
"no_active_environment": "No active environment",
"no_environment": " कोई वातावरण नहीं",
"no_environment_description": " कोई परिवेश नहीं चुना गया था. चुनें कि निम्नलिखित चर के साथ क्या करना है।",
"quick_peek": "Environment Quick Peek",
"replace_with_variable": "Replace with variable",
"scope": "Scope",
"select": " पर्यावरण का चयन करें",
"set": "Set environment",
"set_as_environment": "Set as environment",
"team_environments": "Team Environments",
"title": " वातावरण",
"updated": " पर्यावरण अद्यतन",
"value": "Value",
"variable": "Variable",
"variable_list": " परिवर्तनीय सूची"
},
"error": {
"browser_support_sse": " ऐसा लगता है कि इस ब्राउज़र में सर्वर से भेजे गए इवेंट का समर्थन नहीं है।",
"check_console_details": " विवरण के लिए कंसोल लॉग की जाँच करें।",
"curl_invalid_format": " कर्ल ठीक से स्वरूपित नहीं है",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
"delete_account_description": "You must either remove yourself, transfer ownership, or delete these teams before you can delete your account.",
"empty_req_name": " खाली अनुरोध का नाम",
"f12_details": " (विवरण के लिए F12)",
"gql_prettify_invalid_query": " अमान्य क्वेरी को सुंदर नहीं बना सका, क्वेरी सिंटैक्स त्रुटियों को हल नहीं कर सका और पुनः प्रयास करें",
"incomplete_config_urls": " अपूर्ण कॉन्फ़िगरेशन URL",
"incorrect_email": " गलत ईमेल",
"invalid_link": " अमान्य लिंक",
"invalid_link_description": " आपके द्वारा क्लिक किया गया लिंक अमान्य है या समाप्त हो गया है।",
"json_parsing_failed": " अमान्य JSON",
"json_prettify_invalid_body": " अमान्य निकाय को सुंदर नहीं बना सका, json सिंटैक्स त्रुटियों को हल करें और पुनः प्रयास करें",
"network_error": " ऐसा लगता है कि कोई नेटवर्क त्रुटि है। कृपया पुन: प्रयास करें।",
"network_fail": " अनुरोध नहीं भेजा जा सका",
"no_duration": " कोई अवधि नहीं",
"no_results_found": " कोई मेल नहीं मिले",
"page_not_found": " यह पृष्ठ नहीं मिल सका",
"proxy_error": "Proxy error",
"script_fail": " पूर्व-अनुरोध स्क्रिप्ट निष्पादित नहीं कर सका",
"something_went_wrong": " कुछ गलत हो गया",
"test_script_fail": " अनुरोध के बाद स्क्रिप्ट निष्पादित नहीं कर सका"
},
"export": {
"as_json": " JSON के रूप में निर्यात करें",
"create_secret_gist": " गुप्त सार बनाएँ",
"gist_created": " जिस्ट बनाया",
"require_github": " गुप्त सार बनाने के लिए GitHub के साथ लॉगिन करें",
"title": " निर्यात करना"
},
"filter": {
"all": "All",
"none": "None",
"starred": "Starred"
},
"folder": {
"created": " फोल्डर बनाया",
"edit": " फ़ोल्डर संपादित करें",
"invalid_name": " कृपया फ़ोल्डर के लिए एक नाम प्रदान करें",
"name_length_insufficient": " फ़ोल्डर का नाम कम से कम 3 वर्ण लंबा होना चाहिए",
"new": " नया फोल्डर",
"renamed": " फ़ोल्डर का नाम बदला"
},
"graphql": {
"connection_switch_confirm": "Do you want to connect with the latest GraphQL endpoint?",
"connection_switch_new_url": "Switching to a tab will disconnected you from the active GraphQL connection. New connection URL is",
"connection_switch_url": "You're connected to a GraphQL endpoint the connection URL is",
"mutations": " उत्परिवर्तन",
"schema": " योजना",
"subscriptions": " सदस्यता",
"switch_connection": "Switch connection"
},
"group": {
"time": "Time",
"url": "URL"
},
"header": {
"install_pwa": " एप्लिकेशन इंस्टॉल करें",
"login": " लॉग इन करें",
"save_workspace": " मेरा कार्यक्षेत्र सहेजें"
},
"helpers": {
"authorization": " जब आप अनुरोध भेजेंगे तो प्राधिकरण शीर्षलेख स्वतः उत्पन्न हो जाएगा।",
"generate_documentation_first": " पहले दस्तावेज़ तैयार करें",
"network_fail": " एपीआई समापन बिंदु तक पहुंचने में असमर्थ। अपने नेटवर्क कनेक्शन की जाँच करें या किसी भिन्न इंटरसेप्टर का चयन करें और पुनः प्रयास करें।",
"offline": " ऐसा लगता है कि आप ऑफ़लाइन हैं. हो सकता है कि इस कार्यस्थान का डेटा अप टू डेट न हो.",
"offline_short": " ऐसा लगता है कि आप ऑफ़लाइन हैं.",
"post_request_tests": " टेस्ट स्क्रिप्ट जावास्क्रिप्ट में लिखी जाती हैं, और प्रतिक्रिया प्राप्त होने के बाद चलाई जाती हैं।",
"pre_request_script": " पूर्व-अनुरोध स्क्रिप्ट जावास्क्रिप्ट में लिखी जाती हैं, और अनुरोध भेजे जाने से पहले चलाई जाती हैं।",
"script_fail": " ऐसा लगता है कि प्री-रिक्वेस्ट स्क्रिप्ट में गड़बड़ है। नीचे दी गई त्रुटि की जाँच करें और उसके अनुसार स्क्रिप्ट को ठीक करें।",
"test_script_fail": " ऐसा लगता है कि परीक्षण स्क्रिप्ट में कोई त्रुटि है। कृपया त्रुटियों को ठीक करें और फिर से परीक्षण चलाएं",
"tests": "Write a test script to automate debugging."
},
"hide": {
"collection": "संग्रह पैनल संक्षिप्त करें",
"more": "अधिक छुपाएं",
"preview": "पूर्वावलोकन छुपाएं",
"sidebar": "साइडबार को ध्वस्त करें"
},
"import": {
"collections": "आयात संग्रहण",
"curl": "आयात cURL",
"failed": "आयात करते समय त्रुटि: प्रारूप पहचाना नहीं गया",
"from_gist": "Gist से आयात करें",
"from_gist_description": "Gist URL से आयात करें",
"from_insomnia": "Insomnia से आयात करें",
"from_insomnia_description": "Insomnia collection से आयात करें",
"from_json": "Hoppscotch से आयात करें",
"from_json_description": "Hoppsotch संग्रह फ़ाइल से आयात करें",
"from_my_collections": "मेरे संग्रह से आयात करें",
"from_my_collections_description": "मेरे संग्रह फ़ाइल से आयात करें",
"from_openapi": "OpenAPI से आयात करें",
"from_openapi_description": "OpenAPI specification file से आयात करें (JSON)",
"from_postman": "Postman से आयात करें",
"from_postman_description": "Postman collection से आयात करें",
"from_url": "URL से आयात करें",
"gist_url": "Gist URL दर्ज करें",
"import_from_url_invalid_fetch": "URL से डेटा नहीं मिल सका",
"import_from_url_invalid_file_format": "संग्रह आयात करते समय त्रुटि",
"import_from_url_invalid_type": "असमर्थित प्रकार। स्वीकृत मूल्य हैं 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "संग्रह आयातित",
"json_description": "Hoppscotch Collections JSON फ़ाइल से संग्रह आयात करें",
"title": "आयात करें"
},
"inspections": {
"description": "Inspect possible errors",
"environment": {
"add_environment": "Add to Environment",
"not_found": "Environment variable “{environment}” not found."
},
"header": {
"cookie": "The browser doesn't allow Hoppscotch to set the Cookie Header. While we're working on the Hoppscotch Desktop App (coming soon), please use the Authorization Header instead."
},
"response": {
"401_error": "Please check your authentication credentials.",
"404_error": "Please check your request URL and method type.",
"cors_error": "Please check your Cross-Origin Resource Sharing configuration.",
"default_error": "Please check your request.",
"network_error": "Please check your network connection."
},
"title": "Inspector",
"url": {
"extension_not_installed": "Extension not installed.",
"extension_unknown_origin": "Make sure you've added the API endpoint's origin to the Hoppscotch Browser Extension list.",
"extention_enable_action": "Enable Browser Extension",
"extention_not_enabled": "Extension not enabled."
}
},
"layout": {
"collapse_collection": "संग्रह को संक्षिप्त या विस्तृत करें",
"collapse_sidebar": "साइडबार को संक्षिप्त या विस्तृत करें",
"column": "लंबवत लेआउट",
"name": "लेआउट",
"row": "क्षैतिज लेआउट"
},
"modal": {
"close_unsaved_tab": "You have unsaved changes",
"collections": "संग्रह",
"confirm": "पुष्टि करें",
"edit_request": "अनुरोध संपादित करें",
"import_export": "आयात / निर्यात"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
"clean_session": "Clean Session",
"clear_input": "Clear input",
"clear_input_on_send": "Clear input on send",
"client_id": "Client ID",
"color": "Pick a color",
"communication": "संचार",
"connection_config": "Connection Config",
"connection_not_authorized": "This MQTT connection does not use any authentication.",
"invalid_topic": "Please provide a topic for the subscription",
"keep_alive": "Keep Alive",
"log": "लॉग",
"lw_message": "Last-Will Message",
"lw_qos": "Last-Will QoS",
"lw_retain": "Last-Will Retain",
"lw_topic": "Last-Will Topic",
"message": "संदेश",
"new": "New Subscription",
"not_connected": "Please start a MQTT connection first.",
"publish": "प्रकाशित",
"qos": "QoS",
"ssl": "SSL",
"subscribe": "सब्सक्राइब करें",
"topic": "विषय",
"topic_name": "विषय का नाम",
"topic_title": "विषय प्रकाशित करें / सदस्यता लें",
"unsubscribe": "विषय प्रकाशित करें / सदस्यता लें",
"url": "URL"
},
"navigation": {
"doc": "डॉक्स",
"graphql": "ग्राफक्ल",
"profile": "प्रोफ़ाइल",
"realtime": "रियल टाइम",
"rest": "रेस्ट",
"settings": "समायोजन"
},
"preRequest": {
"javascript_code": "जावास्क्रिप्ट कोड",
"learn": "प्रलेखन पढ़ें",
"script": "पूर्व-अनुरोध स्क्रिप्ट",
"snippets": "स्निपेट्स"
},
"profile": {
"app_settings": "एप्लिकेशन सेटिंग",
"default_hopp_displayname": "Unnamed User",
"editor": "संपादक",
"editor_description": "संपादक अनुरोधों को जोड़ सकते हैं, संपादित कर सकते हैं और हटा सकते हैं।",
"email_verification_mail": "आपके ईमेल पते पर एक सत्यापन ईमेल भेजा गया है। कृपया अपना ईमेल पता सत्यापित करने के लिए लिंक पर क्लिक करें।",
"no_permission": "आपके पास यह कार्रवाई करने की अनुमति नहीं है।",
"owner": "स्वामी",
"owner_description": "मालिक अनुरोध, संग्रह और टीम के सदस्यों को जोड़, संपादित और हटा सकते हैं।",
"roles": "भूमिकाएँ",
"roles_description": "साझा संग्रह तक पहुंच को नियंत्रित करने के लिए भूमिकाओं का उपयोग किया जाता है।",
"updated": "प्रोफाइल अद्यतन किया गया",
"viewer": "दर्शक",
"viewer_description": "दर्शक केवल अनुरोधों को देख और उपयोग कर सकते हैं।"
},
"remove": {
"star": "स्टार निकालें"
},
"request": {
"added": "अनुरोध जोड़ा गया",
"authorization": "प्राधिकार",
"body": "अनुरोध निकाय",
"choose_language": "भाषा चुनें",
"content_type": "सामग्री प्रकार",
"content_type_titles": {
"others": "अन्य",
"structured": "स्ट्रक्चर्ड",
"text": "मूलपाठ"
},
"copy_link": "प्रतिरूप जोड़ना",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "अवधि",
"enter_curl": "कर्ल दर्ज करें",
"generate_code": "उत्पन्न कोड",
"generated_code": "उत्पन्न कोड",
"header_list": "हेडर सूची",
"invalid_name": "कृपया अनुरोध के लिए एक नाम प्रदान करें",
"method": "तरीका",
"moved": "Request moved",
"name": "अनुरोध नाम",
"new": "नई विनती",
"order_changed": "Request Order Updated",
"override": "अवहेलना",
"override_help": "हेडर में <kbd> सामग्री-प्रकार </kbd> सेट करें",
"overriden": "ओवरराइड",
"parameter_list": "क्वेरी पैरामीटर",
"parameters": "मापदंडों",
"path": "रास्ता",
"payload": "पेलोड",
"query": "सवाल",
"raw_body": "कच्चे अनुरोध निकाय",
"rename": "Rename Request",
"renamed": "अनुरोध नाम दिया गया",
"run": "दौड़ना",
"save": "बचाना",
"save_as": "के रूप रक्षित करें",
"saved": "अनुरोध सहेजा गया",
"share": "शेयर करना",
"share_description": "अपने दोस्तों के साथ hoppscotch साझा करें",
"stop": "Stop",
"title": "प्रार्थना",
"type": "अनुरोध का प्रकार",
"url": "यूआरएल",
"variables": "चर",
"view_my_links": "मेरे लिंक देखें"
},
"response": {
"audio": "Audio",
"body": "प्रतिक्रिया निकाय",
"filter_response_body": "फ़िल्टर JSON रिस्पांस बॉडी (JSONPATH सिंटैक्स का उपयोग करता है)",
"headers": "हेडर",
"html": "एचटीएमएल",
"image": "छवि",
"json": "जेसन",
"pdf": "पीडीएफ",
"preview_html": "HTML का पूर्वावलोकन करें",
"raw": "कच्चा",
"size": "आकार",
"status": "दर्जा",
"time": "समय",
"title": "जवाब",
"video": "Video",
"waiting_for_connection": "जुडने के लिए इंतजार",
"xml": "एक्सएमएल"
},
"settings": {
"accent_color": "स्वरोंका रंग",
"account": "खाता",
"account_deleted": "Your account has been deleted",
"account_description": "अपनी खाता सेटिंग कस्टमाइज़ करें।",
"account_email_description": "आपका प्राथमिक ईमेल पता।",
"account_name_description": "यह आपका प्रदर्शन नाम है।",
"background": "पार्श्वभूमि",
"black_mode": "काला",
"choose_language": "भाषा चुनें",
"dark_mode": "अँधेरा",
"delete_account": "Delete account",
"delete_account_description": "Once you delete your account, all your data will be permanently deleted. This action cannot be undone.",
"expand_navigation": "नेविगेशन का विस्तार करें",
"experiments": "प्रयोगों",
"experiments_notice": "यह उन प्रयोगों का एक संग्रह है, जिन पर हम काम कर रहे हैं, जो उपयोगी, मज़ेदार, दोनों या न ही हो सकते हैं। वे अंतिम नहीं हैं और स्थिर नहीं हो सकते हैं, इसलिए यदि कुछ अजीब होता है, तो घबराएं नहीं। बस खतरे को बंद कर दें। एक तरफ मजाक,",
"extension_ver_not_reported": "सूचना नहीं दी",
"extension_version": "विस्तार संस्करण",
"extensions": "ब्राउज़र विस्तार",
"extensions_use_toggle": "अनुरोध भेजने के लिए ब्राउज़र एक्सटेंशन का उपयोग करें (यदि मौजूद है)",
"follow": "हमारे पर का पालन करें",
"interceptor": "इंटरसेप्टर",
"interceptor_description": "एप्लिकेशन और एपीआई के बीच मिडलवेयर।",
"language": "भाषा",
"light_mode": "रोशनी",
"official_proxy_hosting": "आधिकारिक प्रॉक्सी होप्सकॉच द्वारा होस्ट किया गया है।",
"profile": "प्रोफ़ाइल",
"profile_description": "अपने प्रोफ़ाइल विवरण को अपडेट करें",
"profile_email": "ईमेल पता",
"profile_name": "प्रोफ़ाइल नाम",
"proxy": "प्रतिनिधि",
"proxy_url": "प्रॉक्सी यूआरएल",
"proxy_use_toggle": "अनुरोध भेजने के लिए प्रॉक्सी मिडलवेयर का उपयोग करें",
"read_the": "को पढ़िए",
"reset_default": "डिफ़ॉल्ट पर रीसेट",
"short_codes": "लघु संहिताएँ",
"short_codes_description": "छोटे कोड जो आपके द्वारा बनाए गए थे।",
"sidebar_on_left": "बाईं ओर साइडबार",
"sync": "सिंक्रनाइज़",
"sync_collections": "संग्रह",
"sync_description": "इन सेटिंग्स को क्लाउड में सिंक किया जाता है।",
"sync_environments": "वातावरण",
"sync_history": "इतिहास",
"system_mode": "व्यवस्था",
"telemetry": "टेलीमेटरी",
"telemetry_helps_us": "टेलीमेट्री हमें अपने संचालन को निजीकृत करने और आपको सबसे अच्छा अनुभव प्रदान करने में मदद करती है।",
"theme": "थीम",
"theme_description": "अपने एप्लिकेशन थीम को कस्टमाइज़ करें।",
"use_experimental_url_bar": "पर्यावरण हाइलाइटिंग के साथ प्रयोगात्मक URL बार का उपयोग करें",
"user": "उपयोगकर्ता",
"verified_email": "सत्यापित ईमेल",
"verify_email": "ईमेल सत्यापित करें"
},
"shortcodes": {
"actions": "कार्रवाई",
"created_on": "पर बनाया",
"deleted": "शॉर्टकोड हटा दिया गया",
"method": "तरीका",
"not_found": "शॉर्टकोड नहीं मिला",
"short_code": "लघु कूट संख्या",
"url": "यूआरएल"
},
"shortcut": {
"general": {
"close_current_menu": "वर्तमान मेनू बंद करें",
"command_menu": "खोज और कमांड मेनू",
"help_menu": "सहायता मेनू",
"show_all": "कुंजीपटल अल्प मार्ग",
"title": "सामान्य"
},
"miscellaneous": {
"invite": "लोगों को hoppscotch के लिए आमंत्रित करें",
"title": "विविध"
},
"navigation": {
"back": "पिछले पृष्ठ पर वापस जाएं",
"documentation": "प्रलेखन पृष्ठ पर जाएं",
"forward": "अगले पृष्ठ पर आगे बढ़ें",
"graphql": "Graphql पेज पर जाएं",
"profile": "प्रोफ़ाइल पेज पर जाएं",
"realtime": "रियलटाइम पेज पर जाएं",
"rest": "रेस्ट पेज पर जाएं",
"settings": "सेटिंग्स पृष्ठ पर जाएं",
"title": "मार्गदर्शन"
},
"others": {
"prettify": "Prettify Editor's Content",
"title": "Others"
},
"request": {
"copy_request_link": "कॉपी अनुरोध लिंक",
"delete_method": "हटाएं विधि का चयन करें",
"get_method": "गेट विधि का चयन करें",
"head_method": "हेड विधि का चयन करें",
"import_curl": "Import cURL",
"method": "तरीका",
"next_method": "अगली विधि का चयन करें",
"post_method": "पोस्ट विधि का चयन करें",
"previous_method": "पिछली विधि का चयन करें",
"put_method": "पुट विधि का चयन करें",
"rename": "Rename Request",
"reset_request": "रीसेट अनुरोध",
"save_request": "Save Request",
"save_to_collections": "संग्रह के लिए सहेजें",
"send_request": "अनुरोध भेजा",
"show_code": "Generate code snippet",
"title": "प्रार्थना"
},
"response": {
"copy": "क्लिपबोर्ड पर प्रतिक्रिया कॉपी करें",
"download": "फ़ाइल के रूप में प्रतिक्रिया डाउनलोड करें",
"title": "जवाब"
},
"theme": {
"black": "ब्लैक मोड पर थीम को स्विच करें",
"dark": "डार्क मोड पर थीम को स्विच करें",
"light": "प्रकाश मोड पर थीम स्विच करें",
"system": "सिस्टम मोड पर थीम स्विच करें",
"title": "थीम"
}
},
"show": {
"code": "शो कोड",
"collection": "संग्रह पैनल का विस्तार करें",
"more": "और दिखाओ",
"sidebar": "साइडबार का विस्तार करें"
},
"socketio": {
"communication": "संचार",
"connection_not_authorized": "यह सॉकेटियो कनेक्शन किसी भी प्रमाणीकरण का उपयोग नहीं करता है।",
"event_name": "कार्यक्रम नाम",
"events": "आयोजन",
"log": "लकड़ी का लट्ठा",
"url": "यूआरएल"
},
"spotlight": {
"change_language": "Change Language",
"environments": {
"delete": "Delete current environment",
"duplicate": "Duplicate current environment",
"duplicate_global": "Duplicate global environment",
"edit": "Edit current environment",
"edit_global": "Edit global environment",
"new": "Create new environment",
"new_variable": "Create a new environment variable",
"title": "Environments"
},
"general": {
"chat": "Chat with support",
"help_menu": "Help and support",
"open_docs": "Read Documentation",
"open_github": "Open GitHub repository",
"open_keybindings": "Keyboard shortcuts",
"social": "Social",
"title": "General"
},
"graphql": {
"connect": "Connect to server",
"disconnect": "Disconnect from server"
},
"miscellaneous": {
"invite": "Invite your friends to Hoppscotch",
"title": "Miscellaneous"
},
"request": {
"save_as_new": "Save as new request",
"select_method": "Select method",
"switch_to": "Switch to",
"tab_authorization": "Authorization tab",
"tab_body": "Body tab",
"tab_headers": "Headers tab",
"tab_parameters": "Parameters tab",
"tab_pre_request_script": "Pre-request script tab",
"tab_query": "Query tab",
"tab_tests": "Tests tab",
"tab_variables": "Variables tab"
},
"response": {
"copy": "Copy response",
"download": "Download response as file",
"title": "Response"
},
"section": {
"interceptor": "Interceptor",
"interface": "Interface",
"theme": "Theme",
"user": "User"
},
"settings": {
"change_interceptor": "Change Interceptor",
"change_language": "Change Language",
"theme": {
"black": "Black",
"dark": "Dark",
"light": "Light",
"system": "System preference"
}
},
"tab": {
"close_current": "Close current tab",
"close_others": "Close all other tabs",
"duplicate": "Duplicate current tab",
"new_tab": "Open a new tab",
"title": "Tabs"
},
"workspace": {
"delete": "Delete current team",
"edit": "Edit current team",
"invite": "Invite people to team",
"new": "Create new team",
"switch_to_personal": "Switch to your personal workspace",
"title": "Teams"
}
},
"sse": {
"event_type": "घटना प्रकार",
"log": "लकड़ी का लट्ठा",
"url": "यूआरएल"
},
"state": {
"bulk_mode": "थोक संपादन",
"bulk_mode_placeholder": "प्रविष्टियों को न्यूलाइन द्वारा अलग किया जाता है \n कुंजियाँ और मूल्यों को अलग कर दिया जाता है: \n किसी भी पंक्ति को आप जोड़ना चाहते हैं, लेकिन अक्षम रखें",
"cleared": "साफ़ किया गया",
"connected": "जुड़े हुए",
"connected_to": "{name} से जुड़ा हुआ है",
"connecting_to": "{name} से कनेक्ट करना ...",
"connection_error": "जोडने में विफल",
"connection_failed": "कनेक्शन विफल",
"connection_lost": "संपर्क टूट गया",
"copied_to_clipboard": "क्लिपबोर्ड पर नकल",
"deleted": "हटाए गए",
"deprecated": "बहिष्कृत किया गया",
"disabled": "अक्षम",
"disconnected": "डिस्कनेक्ट किया गया",
"disconnected_from": "{name} से डिस्कनेक्ट किया गया",
"docs_generated": "प्रलेखन उत्पन्न",
"download_started": "डाउनलोड शुरू हुआ",
"enabled": "सक्रिय",
"file_imported": "आयातित फ़ाइल",
"finished_in": "{duration} एमएस में समाप्त",
"history_deleted": "इतिहास हटा दिया गया",
"linewrap": "लपेटने की रेखाएँ",
"loading": "लोड हो रहा है...",
"message_received": "संदेश: {message} विषय पर पहुंचे: {topic}",
"mqtt_subscription_failed": "विषय की सदस्यता लेते हुए कुछ गलत हो गया: {topic}",
"none": "कोई भी नहीं",
"nothing_found": "के लिए कुछ भी नहीं मिला",
"published_error": "MSG प्रकाशित करते समय कुछ गलत हुआ: {topic} विषय के लिए: {message}",
"published_message": "प्रकाशित संदेश: {message} विषय के लिए: {topic}",
"reconnection_error": "फिर से जुड़ने में विफल रहा",
"subscribed_failed": "विषय की सदस्यता लेने में विफल: {topic}",
"subscribed_success": "सफलतापूर्वक विषय की सदस्यता: {topic}",
"unsubscribed_failed": "विषय से सदस्यता समाप्त करने में विफल: {topic}",
"unsubscribed_success": "विषय से सफलतापूर्वक सदस्यता: {topic}",
"waiting_send_request": "अनुरोध भेजने की प्रतीक्षा में"
},
"support": {
"changelog": "नवीनतम रिलीज़ के बारे में और पढ़ें",
"chat": "प्रशन? हम से बात करे!",
"community": "सवाल पूछें और दूसरों की मदद करें",
"documentation": "Hoppscotch के बारे में और पढ़ें",
"forum": "सवाल पूछें और उत्तर प्राप्त करें",
"github": "हमें GitHub पर फॉलो करें",
"shortcuts": "ऐप को तेजी से ब्राउज़ करें",
"team": "टीम के संपर्क में रहें",
"title": "सहायता",
"twitter": "चहचहाना पर हमें का पालन करें"
},
"tab": {
"authorization": "प्राधिकार",
"body": "शरीर",
"close": "Close Tab",
"close_others": "Close other Tabs",
"collections": "संग्रह",
"documentation": "प्रलेखन",
"duplicate": "Duplicate Tab",
"environments": "Environments",
"headers": "हेडर",
"history": "इतिहास",
"mqtt": "MQTT",
"parameters": "मापदंडों",
"pre_request_script": "पूर्व-अनुरोध स्क्रिप्ट",
"queries": "प्रश्नों",
"query": "सवाल",
"schema": "योजना",
"socketio": "Socket.IO",
"sse": "एसएसई",
"tests": "परीक्षण",
"types": "प्रकार",
"variables": "चर",
"websocket": "जालसाजक"
},
"team": {
"already_member": "आप पहले से ही इस टीम के सदस्य हैं। अपनी टीम के मालिक से संपर्क करें।",
"create_new": "नई टीम बनाएं",
"deleted": "टीम हटा दी गई",
"edit": "संपादित टीम",
"email": "ईमेल",
"email_do_not_match": "ईमेल आपके खाते के विवरण के साथ मेल नहीं खाता है। अपनी टीम के मालिक से संपर्क करें।",
"exit": "निकास टीम",
"exit_disabled": "केवल मालिक टीम से बाहर नहीं निकल सकते",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "ईमेल प्रारूप अमान्य है",
"invalid_id": "अमान्य टीम आईडी। अपनी टीम के मालिक से संपर्क करें।",
"invalid_invite_link": "अमान्य आमंत्रित लिंक",
"invalid_invite_link_description": "आपके द्वारा पीछा किया गया लिंक अमान्य है। अपनी टीम के मालिक से संपर्क करें।",
"invalid_member_permission": "कृपया टीम के सदस्य को एक वैध अनुमति प्रदान करें",
"invite": "आमंत्रित करना",
"invite_more": "अधिक आमंत्रित करें",
"invite_tooltip": "लोगों को इस कार्यक्षेत्र में आमंत्रित करें",
"invited_to_team": "{owner} ने आपको {team} में शामिल होने के लिए आमंत्रित किया",
"join": "निमंत्रण स्वीकार किया गया",
"join_beta": "टीमों तक पहुंचने के लिए बीटा कार्यक्रम में शामिल हों।",
"join_team": "टीम में शामिल हों}",
"joined_team": "आप {team} में शामिल हो गए हैं",
"joined_team_description": "अब आप इस टीम के सदस्य हैं",
"left": "आपने टीम छोड़ दी",
"login_to_continue": "जारी रखने के लिए लॉगिन करें",
"login_to_continue_description": "एक टीम में शामिल होने के लिए आपको लॉग इन करने की आवश्यकता है।",
"logout_and_try_again": "लॉगआउट और किसी अन्य खाते के साथ साइन इन करें",
"member_has_invite": "इस ईमेल आईडी में पहले से ही एक निमंत्रण है। अपनी टीम के मालिक से संपर्क करें।",
"member_not_found": "सदस्य अनुपस्थित। अपनी टीम के मालिक से संपर्क करें।",
"member_removed": "उपयोगकर्ता हटा दिया",
"member_role_updated": "उपयोगकर्ता भूमिकाएँ अद्यतन की गईं",
"members": "सदस्यों",
"more_members": "+{count} more",
"name_length_insufficient": "टीम का नाम कम से कम 6 अक्षर लंबा होना चाहिए",
"name_updated": "टीम का नाम अपडेट किया गया",
"new": "नई टीम",
"new_created": "नई टीम बनाई गई",
"new_name": "मेरी नई टीम",
"no_access": "आपके पास इन संग्रहों तक पहुंच नहीं है",
"no_invite_found": "निमंत्रण नहीं मिला। अपनी टीम के मालिक से संपर्क करें।",
"no_request_found": "Request not found.",
"not_found": "टीम नहीं मिली। अपनी टीम के मालिक से संपर्क करें।",
"not_valid_viewer": "आप एक वैध दर्शक नहीं हैं। अपनी टीम के मालिक से संपर्क करें।",
"parent_coll_move": "Cannot move collection to a child collection",
"pending_invites": "लंबित आमंत्रण",
"permissions": "अनुमतियां",
"same_target_destination": "Same target and destination",
"saved": "टीम बचाया",
"select_a_team": "एक टीम का चयन करें",
"title": "टीमों",
"we_sent_invite_link": "हमने सभी आमंत्रणों के लिए एक आमंत्रण लिंक भेजा!",
"we_sent_invite_link_description": "सभी आमंत्रणों से उनके इनबॉक्स की जांच करने के लिए पूछें। टीम में शामिल होने के लिए लिंक पर क्लिक करें।"
},
"team_environment": {
"deleted": "Environment Deleted",
"duplicate": "Environment Duplicated",
"not_found": "Environment not found."
},
"test": {
"failed": "परीक्षण विफल",
"javascript_code": "जावास्क्रिप्ट कोड",
"learn": "प्रलेखन पढ़ें",
"passed": "परीक्षा उत्तीर्ण की",
"report": "जाँच रिपोर्ट",
"results": "परीक्षा के परिणाम",
"script": "लिखी हुई कहानी",
"snippets": "स्निपेट्स"
},
"websocket": {
"communication": "संचार",
"log": "लकड़ी का लट्ठा",
"message": "संदेश",
"protocols": "प्रोटोकॉल",
"url": "यूआरएल"
},
"workspace": {
"change": "Change workspace",
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Automatikus görgetés",
"cancel": "Mégse",
"choose_file": "Válasszon egy fájlt",
@@ -10,6 +11,7 @@
"connect": "Kapcsolódás",
"connecting": "Kapcsolódás",
"copy": "Másolás",
"create": "Create",
"delete": "Törlés",
"disconnect": "Leválasztás",
"dismiss": "Eltüntetés",
@@ -31,6 +33,7 @@
"open_workspace": "Munkaterület megnyitása",
"paste": "Beillesztés",
"prettify": "Csinosítás",
"properties": "Properties",
"remove": "Eltávolítás",
"rename": "Rename",
"restore": "Visszaállítás",
@@ -39,6 +42,7 @@
"scroll_to_top": "Görgetés a tetejére",
"search": "Keresés",
"send": "Küldés",
"share": "Share",
"start": "Indítás",
"starting": "Indítás",
"stop": "Leállítás",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Csevegjen velünk",
"contact_us": "Lépjen kapcsolatba velünk",
"cookies": "Cookies",
"copy": "Másolás",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Felhasználó-hitelesítési token másolása",
"developer_option": "Fejlesztői beállítások",
"developer_option_description": "Fejlesztői eszközök, amelyek segítenek a Hoppscotch fejlesztésében és karbantartásában.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Gyorsbillentyűk",
"name": "Hoppscotch",
"new_version_found": "Új verzió található. Töltse újra az oldalt a frissítéshez.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Beállítások",
"proxy_privacy_policy": "Proxy adatvédelmi irányelvei",
"reload": "Újratöltés",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Token előállítása",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Felvétel az URL-be",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Tudja meg, hogyan",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Átadta",
"password": "Jelszó",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Felhatalmazás típusa",
"username": "Felhasználónév"
@@ -124,6 +148,7 @@
"created": "Gyűjtemény létrehozva",
"different_parent": "Nem lehet átrendezni a különböző szülővel rendelkező gyűjteményt",
"edit": "Gyűjtemény szerkesztése",
"import_or_create": "Import or create a collection",
"invalid_name": "Adjon nevet a gyűjteménynek",
"invalid_root_move": "A gyűjtemény már a gyökérben van",
"moved": "Sikeresen áthelyezve",
@@ -132,6 +157,8 @@
"name_length_insufficient": "A gyűjtemény nevének legalább 3 karakter hosszúságúnak kell lennie",
"new": "Új gyűjtemény",
"order_changed": "Gyűjtemény sorrendje frissítve",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Gyűjtemény átnevezve",
"request_in_use": "A kérés használatban",
"save_as": "Mentés másként",
@@ -151,6 +178,7 @@
"remove_folder": "Biztosan véglegesen törölni szeretné ezt a mappát?",
"remove_history": "Biztosan véglegesen törölni szeretné az összes előzményt?",
"remove_request": "Biztosan véglegesen törölni szeretné ezt a kérést?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Biztosan törölni szeretné ezt a csapatot?",
"remove_telemetry": "Biztosan ki szeretné kapcsolni a telemetriát?",
"request_change": "Biztosan el szeretné vetni a jelenlegi kérést? Minden mentetlen változtatás el fog veszni.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "{count}. fejléc",
"message": "{count}. üzenet",
@@ -192,11 +238,13 @@
"profile": "Jelentkezzen be a profilja megtekintéséhez",
"protocols": "A protokollok üresek",
"schema": "Kapcsolódjon egy GraphQL-végponthoz a séma megtekintéséhez",
"shortcodes": "A rövid kódok üresek",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "A feliratkozások üresek",
"team_name": "A csapat neve üres",
"teams": "Ön nem tartozik semmilyen csapathoz",
"tests": "Nincsenek tesztek ehhez a kéréshez"
"tests": "Nincsenek tesztek ehhez a kéréshez",
"shortcodes": "A rövid kódok üresek"
},
"environment": {
"add_to_global": "Hozzáadás a globálishoz",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Adjon nevet a környezetnek",
"list": "Environment variables",
"my_environments": "Saját környezetek",
@@ -232,8 +281,10 @@
"variable_list": "Változólista"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Úgy tűnik, hogy ez a böngésző nem támogatja a kiszolgáló által küldött eseményeket.",
"check_console_details": "Nézze meg a konzolnaplót a részletekért.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "A cURL nincs megfelelően formázva",
"danger_zone": "Veszélyes zóna",
"delete_account": "Az Ön fiókja jelenleg tulajdonos ezekben a csapatokban:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Nem sikerült csinosítani egy érvénytelen törzset, oldja meg a JSON szintaktikai hibáit, és próbálja újra",
"network_error": "Úgy tűnik, hogy hálózati hiba van. Próbálja újra.",
"network_fail": "Nem sikerült elküldeni a kérést",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Nincs időtartam",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Nincs találat",
"page_not_found": "Ez az oldal nem található",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Nem sikerült végrehajtani a kérés előtti parancsfájlt",
"something_went_wrong": "Valami elromlott",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportálás JSON formátumban",
"create_secret_gist": "Titkos Gist létrehozása",
"failed": "Something went wrong while exporting",
"gist_created": "Gist létrehozva",
"require_github": "Jelentkezzen be GitHub használatával a titkos Gist létrehozásához",
"title": "Exportálás"
@@ -286,6 +341,9 @@
"subscriptions": "Feliratkozások",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Idő",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "A felhatalmazási fejléc automatikusan elő lesz állítva a kérés elküldésekor.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Először állítsa elő a dokumentációt",
"network_fail": "Nem lehet elérni az API-végpontot. Ellenőrizze a hálózati kapcsolatot vagy válasszon egy másik elfogót, és próbálja újra.",
"offline": "Úgy tűnik, hogy kapcsolat nélküli módban van. Előfordulhat, hogy a munkaterületen lévő adatok nem naprakészek.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Gyűjtemények importálása",
"curl": "cURL importálása",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Hiba az importálás során: a formátum nem azonosítható",
"from_file": "Import from File",
"from_gist": "Importálás Gistből",
"from_gist_description": "Importálás Gist URL-ből",
"from_insomnia": "Importálás Insomniából",
@@ -331,11 +394,17 @@
"from_postman_description": "Importálás Postman-gyűjteményből",
"from_url": "Importálás URL-ből",
"gist_url": "Gist URL megadása",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Nem sikerült lekérni az adatokat az URL-ről",
"import_from_url_invalid_file_format": "Hiba a gyűjtemények importálása során",
"import_from_url_invalid_type": "Nem támogatott típus. Az elfogadott értékek: „hoppscotch”, „openapi”, „postman” vagy „insomnia”.",
"import_from_url_success": "Gyűjtemények importálva",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Gyűjtemények importálása Hoppscotch-gyűjtemények JSON-fájlból",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importálás"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "Elmentetlen változtatásai vannak",
"collections": "Gyűjtemények",
"confirm": "Megerősítés",
"customize_request": "Customize Request",
"edit_request": "Kérés szerkesztése",
"import_export": "Importálás és exportálás"
"import_export": "Importálás és exportálás",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Ön már feliratkozott erre a témára.",
@@ -449,13 +520,14 @@
"structured": "Szerkesztett",
"text": "Szöveg"
},
"copy_link": "Hivatkozás másolása",
"different_collection": "Nem lehet átrendezni a különböző gyűjteményekből érkező kéréseket",
"duplicated": "Kérés megkettőzve",
"duration": "Időtartam",
"enter_curl": "cURL-parancs megadása",
"generate_code": "Kód előállítása",
"generated_code": "Előállított kód",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Fejléclista",
"invalid_name": "Adjon nevet a kérésnek",
"method": "Módszer",
@@ -480,12 +552,14 @@
"saved": "Kérés elmentve",
"share": "Megosztás",
"share_description": "A Hoppscotch megosztása az ismerőseivel",
"share_request": "Share Request",
"stop": "Stop",
"title": "Kérés",
"type": "Kérés típusa",
"url": "URL",
"variables": "Változók",
"view_my_links": "Saját hivatkozások megtekintése"
"view_my_links": "Saját hivatkozások megtekintése",
"copy_link": "Hivatkozás másolása"
},
"response": {
"audio": "Hang",
@@ -513,6 +587,7 @@
"account_description": "A fiókbeállítások személyre szabása.",
"account_email_description": "Az Ön elsődleges e-mail-címe.",
"account_name_description": "Ez a megjelenített neve.",
"additional": "Additional Settings",
"background": "Háttér",
"black_mode": "Fekete",
"choose_language": "Nyelv kiválasztása",
@@ -559,14 +634,31 @@
"verified_email": "Ellenőrzött e-mail-cím",
"verify_email": "E-mail-cím ellenőrzése"
},
"shortcodes": {
"actions": "Műveletek",
"created_on": "Létrehozva",
"deleted": "Rövid kód törölve",
"method": "Módszer",
"not_found": "A rövid kód nem található",
"short_code": "Rövid kód",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kérés hivatkozásának másolása",
"delete_method": "DELETE módszer kiválasztása",
"get_method": "GET módszer kiválasztása",
"head_method": "HEAD módszer kiválasztása",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Mentés a gyűjteményekbe",
"send_request": "Kérés elküldése",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Kérés"
"title": "Kérés",
"copy_request_link": "Kérés hivatkozásának másolása"
},
"response": {
"copy": "Válasz másolása a vágólapra",
@@ -735,6 +828,7 @@
"connection_error": "Nem sikerült kapcsolódni",
"connection_failed": "A kapcsolódás sikertelen",
"connection_lost": "A kapcsolat elveszett",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Vágólapra másolva",
"deleted": "Törölve",
"deprecated": "ELAVULT",
@@ -742,10 +836,12 @@
"disconnected": "Leválasztva",
"disconnected_from": "Leválasztva innen: {name}",
"docs_generated": "Dokumentáció előállítva",
"download_failed": "Download failed",
"download_started": "A letöltés elkezdődött",
"enabled": "Engedélyezve",
"file_imported": "Fájl importálva",
"finished_in": "Befejeződött {duration} ms alatt",
"hide": "Hide",
"history_deleted": "Előzmények törölve",
"linewrap": "Sorok tördelése",
"loading": "Betöltés…",
@@ -756,6 +852,7 @@
"published_error": "Valami elromlott a következő üzenet közzététele során: {topic}, ehhez a témához: {message}",
"published_message": "Közzétett üzenet: {message}, ehhez a témához: {topic}",
"reconnection_error": "Nem sikerült újrakapcsolódni",
"show": "Show",
"subscribed_failed": "Nem sikerült feliratkozni erre a témára: {topic}",
"subscribed_success": "Sikeresen feliratkozott erre a témára: {topic}",
"unsubscribed_failed": "Nem sikerült leiratkozni erről a témáról: {topic}",
@@ -791,6 +888,7 @@
"queries": "Lekérdezések",
"query": "Lekérdezés",
"schema": "Séma",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Tesztek",
@@ -807,6 +905,7 @@
"email_do_not_match": "Az e-mail-cím nem egyezik a fiókja részleteivel. Vegye fel a kapcsolatot a csapat tulajdonosával.",
"exit": "Kilépés a csapatból",
"exit_disabled": "Csak a tulajdonos nem léphet ki a csapatból",
"failed_invites": "Failed invites",
"invalid_coll_id": "Érvénytelen gyűjteményazonosító",
"invalid_email_format": "Az e-mail formátuma érvénytelen",
"invalid_id": "Érvénytelen csapatazonosító. Vegye fel a kapcsolatot a csapat tulajdonosával.",
@@ -848,6 +947,7 @@
"same_target_destination": "Ugyanaz a cél és célhely",
"saved": "Csapat elmentve",
"select_a_team": "Csapat kiválasztása",
"success_invites": "Success invites",
"title": "Csapatok",
"we_sent_invite_link": "Elküldtünk egy meghívási hivatkozást az összes meghívottnak.",
"we_sent_invite_link_description": "Kérje meg az összes meghívottat, hogy nézzék meg a beérkező leveleiket. Kattintsanak a hivatkozásra a csapathoz való csatlakozáshoz."
@@ -879,5 +979,14 @@
"personal": "Saját munkaterület",
"team": "Csapat-munkaterület",
"title": "Munkaterületek"
},
"shortcodes": {
"actions": "Műveletek",
"created_on": "Létrehozva",
"deleted": "Rövid kód törölve",
"method": "Módszer",
"not_found": "A rövid kód nem található",
"short_code": "Rövid kód",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Gulir Otomatis",
"cancel": "Batalkan",
"choose_file": "Pilih file",
@@ -10,6 +11,7 @@
"connect": "Sambungkan",
"connecting": "Menyambungkan",
"copy": "Salin",
"create": "Create",
"delete": "Menghapus",
"disconnect": "Memutuskan",
"dismiss": "Tolak",
@@ -31,6 +33,7 @@
"open_workspace": "Ruang kerja terbuka",
"paste": "Tempel",
"prettify": "Prettify",
"properties": "Properties",
"remove": "Hapus",
"rename": "Rename",
"restore": "Pulihkan",
@@ -39,6 +42,7 @@
"scroll_to_top": "Gulir ke atas",
"search": "Cari",
"send": "Kirim",
"share": "Share",
"start": "Mulai",
"starting": "Memulai",
"stop": "Berhenti",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Berbincanglah dengan kami",
"contact_us": "Hubungi kami",
"cookies": "Cookies",
"copy": "Salin",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Salin Token Otentikasi Pengguna",
"developer_option": "Opsi pengembang",
"developer_option_description": "Alat pengembang yang membantu dalam pengembangan dan pemeliharaan Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Pintasan keyboard",
"name": "Hoppscotch",
"new_version_found": "Versi baru ditemukan. Segarkan untuk memperbarui..",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Pilihan",
"proxy_privacy_policy": "Kebijakan privasi proxy",
"reload": "Muat ulang",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Buat Token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Sertakan dalam URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Belajar bagaimana",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Lewat",
"password": "Kata Sandi",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Jenis Otorisasi",
"username": "Nama Pengguna"
@@ -124,6 +148,7 @@
"created": "Koleksi dibuat",
"different_parent": "Tidak dapat mengubah urutan koleksi dengan induk yang berbeda",
"edit": "Mengubah Koleksi",
"import_or_create": "Import or create a collection",
"invalid_name": "Berikan nama untuk Koleksi",
"invalid_root_move": "Koleksi sudah berada di akar direktori",
"moved": "Berhasil Dipindahkan",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Nama koleksi harus minimal 3 karakter",
"new": "Koleksi baru",
"order_changed": "Pembaruan Urutan Koleksi",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Koleksi berganti nama",
"request_in_use": "Permintaan sedang digunakan",
"save_as": "Simpan Sebagai",
@@ -151,6 +178,7 @@
"remove_folder": "Apakah Anda yakin ingin menghapus folder ini secara permanen?",
"remove_history": "Apakah Anda yakin ingin menghapus semua riwayat secara permanen?",
"remove_request": "Apakah Anda yakin ingin menghapus permintaan ini secara permanen?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Apakah Anda yakin ingin menghapus tim ini?",
"remove_telemetry": "Apakah Anda yakin ingin menyisih dari Telemetri?",
"request_change": "Apakah Anda yakin ingin membuang permintaan saat ini, perubahan yang belum disimpan akan hilang.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Header {count}",
"message": "Pesan {count}",
@@ -192,11 +238,13 @@
"profile": "Masuk untuk melihat profil Anda",
"protocols": "Protokol kosong",
"schema": "Hubungkan ke endpoint GraphQL untuk melihat skema",
"shortcodes": "Shortcodes kosong",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Langganan kosong",
"team_name": "Nama team kosong",
"teams": "Kamu bukan di team manapun",
"tests": "Tidak ada tes untuk permintaan ini"
"tests": "Tidak ada tes untuk permintaan ini",
"shortcodes": "Shortcodes kosong"
},
"environment": {
"add_to_global": "Tambahkan ke Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Tolong beri nama untuk environment",
"list": "Environment variables",
"my_environments": "Environment Saya",
@@ -232,8 +281,10 @@
"variable_list": "Daftar Variable"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Browser ini sepertinya tidak memiliki dukungan Server Sent Events.",
"check_console_details": "Periksa console log untuk detailnya.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL tidak diformat dengan benar",
"danger_zone": "Danger zone",
"delete_account": "Akun Anda saat ini merupakan pemilik dalam tim-tim ini:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Tidak dapat prettify body yang tidak valid, selesaikan kesalahan sintaks json dan coba lagi",
"network_error": "Sepertinya ada kesalahan jaringan. Silakan coba lagi.",
"network_fail": "Tidak dapat mengirim permintaan",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Tidak ada durasi",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Tidak ada kecocokan yang ditemukan",
"page_not_found": "Halaman ini tidak dapat ditemukan",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Tidak dapat menjalankan pre-request script",
"something_went_wrong": "Ada yang salah",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Export sebagai JSON",
"create_secret_gist": "Buat secret Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist dibuat",
"require_github": "Masuk dengan GitHub untuk membuat secret gist",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Subscriptions",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Header otorisasi akan dibuat secara otomatis saat Anda mengirim permintaan.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generate dokumentasi dulu",
"network_fail": "Tidak dapat mencapai API endpoint. Periksa koneksi jaringan Anda atau pilih Interceptor lain dan coba lagi.",
"offline": "Anda tampaknya sedang offline. Data di ruang kerja ini mungkin tidak terbarui.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Impor koleksi",
"curl": "Impor cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Kesalahan saat mengimpor: format tidak dikenali",
"from_file": "Import from File",
"from_gist": "Impor dari Gist",
"from_gist_description": "Impor dari Gist URL",
"from_insomnia": "Impor dari Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Impor dari Koleksi Postman",
"from_url": "Impor dari URL",
"gist_url": "Masukkan Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Tidak bisa mendapatkan data dari url",
"import_from_url_invalid_file_format": "Kesalahan saat mengimpor koleksi",
"import_from_url_invalid_type": "Jenis tidak didukung. nilai yang diterima adalah 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Impor koleksi berhasil",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Impor Koleksi dari berkas JSON Koleksi Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Impor"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "Anda memiliki perubahan yang belum disimpan",
"collections": "Koleksi",
"confirm": "Mengonfirmasi",
"customize_request": "Customize Request",
"edit_request": "Edit Request",
"import_export": "Impor / Ekspor"
"import_export": "Impor / Ekspor",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Anda sudah berlangganan topik ini.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Salin tautan",
"different_collection": "Tidak dapat mengubah urutan permintaan dari koleksi yang berbeda",
"duplicated": "Request duplicated",
"duration": "Durasi",
"enter_curl": "Masukkan cURL",
"generate_code": "Hasilkan kode",
"generated_code": "Hasilkan kode",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Daftar Header",
"invalid_name": "Harap berikan nama untuk request",
"method": "Method",
@@ -480,12 +552,14 @@
"saved": "Request disimpan",
"share": "Membagikan",
"share_description": "Bagikan Hoppscotch dengan teman-teman Anda",
"share_request": "Share Request",
"stop": "Stop",
"title": "Request",
"type": "Tipe Request",
"url": "URL",
"variables": "Variables",
"view_my_links": "Lihat tautan saya"
"view_my_links": "Lihat tautan saya",
"copy_link": "Salin tautan"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Sesuaikan pengaturan akun Anda.",
"account_email_description": "Alamat surel utama Anda.",
"account_name_description": "Ini adalah nama tampilan Anda.",
"additional": "Additional Settings",
"background": "Latar belakang",
"black_mode": "Hitam",
"choose_language": "Pilih bahasa",
@@ -559,14 +634,31 @@
"verified_email": "Surel terverifikasi",
"verify_email": "Verifikasi surel"
},
"shortcodes": {
"actions": "Tindakan",
"created_on": "Dibuat pada",
"deleted": "Shortcode dihapus",
"method": "Method",
"not_found": "Shortcode tidak ditemukan",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Salin Tautan Permintaan",
"delete_method": "Pilih metode DELETE",
"get_method": "Pilih metode GET",
"head_method": "Pilih metode HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Menyimpan ke Collections",
"send_request": "Kirim Request",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Request"
"title": "Request",
"copy_request_link": "Salin Tautan Permintaan"
},
"response": {
"copy": "Salin response ke papan klip",
@@ -735,6 +828,7 @@
"connection_error": "Gagal terhubung",
"connection_failed": "Koneksi gagal",
"connection_lost": "Koneksi terputus",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Disalin ke papan klip",
"deleted": "Dihapus",
"deprecated": "Tidak digunakan lagi",
@@ -742,10 +836,12 @@
"disconnected": "Terputus",
"disconnected_from": "Terputus dari {name}",
"docs_generated": "Dokumentasi dihasilkan",
"download_failed": "Download failed",
"download_started": "Unduhan dimulai",
"enabled": "Diaktifkan",
"file_imported": "File diimpor",
"finished_in": "Selesai dalam {duration} ms",
"hide": "Hide",
"history_deleted": "Riwayat dihapus",
"linewrap": "Bungkus baris",
"loading": "Memuat...",
@@ -756,6 +852,7 @@
"published_error": "Terjadi masalah saat memublikasikan msg: {topic} ke topik: {message}",
"published_message": "Pesan yang dipublikasikan: {message} ke topik: {topic}",
"reconnection_error": "Gagal menyambung kembali",
"show": "Show",
"subscribed_failed": "Gagal berlangganan topik: {topic}",
"subscribed_success": "Berhasil berlangganan topik: {topic}",
"unsubscribed_failed": "Gagal berhenti berlangganan dari topik: {topic}",
@@ -791,6 +888,7 @@
"queries": "Queries",
"query": "Query",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Tests",
@@ -807,6 +905,7 @@
"email_do_not_match": "Surel tidak cocok dengan detail akun Anda. Hubungi pemilik tim Anda.",
"exit": "Keluar dari Tim",
"exit_disabled": "Hanya pemilik yang tidak dapat keluar dari tim",
"failed_invites": "Failed invites",
"invalid_coll_id": "ID koleksi tidak valid",
"invalid_email_format": "Format surel tidak valid",
"invalid_id": "ID tim tidak valid. Hubungi pemilik tim Anda.",
@@ -848,6 +947,7 @@
"same_target_destination": "Sama tujuan dan destinasi",
"saved": "Tim disimpan",
"select_a_team": "Pilih tim",
"success_invites": "Success invites",
"title": "tim",
"we_sent_invite_link": "Kami mengirim tautan undangan ke semua undangan!",
"we_sent_invite_link_description": "Minta semua undangan untuk memeriksa kotak masuk mereka. Klik tautan untuk bergabung dengan tim."
@@ -879,5 +979,14 @@
"personal": "Workspace Saya",
"team": "Workspace Tim",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Tindakan",
"created_on": "Dibuat pada",
"deleted": "Shortcode dihapus",
"method": "Method",
"not_found": "Shortcode tidak ditemukan",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Annulla",
"choose_file": "Scegli un file",
@@ -10,6 +11,7 @@
"connect": "Connetti",
"connecting": "Connecting",
"copy": "Copia",
"create": "Create",
"delete": "Elimina",
"disconnect": "Disconnetti",
"dismiss": "Abbandona",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Abbellisci",
"properties": "Properties",
"remove": "Rimuovi",
"rename": "Rename",
"restore": "Ripristina",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Cerca",
"send": "Invia",
"share": "Share",
"start": "Avvia",
"starting": "Starting",
"stop": "Interrompi",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Chatta con noi",
"contact_us": "Contattaci",
"cookies": "Cookies",
"copy": "Copia",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Tasti rapidi",
"name": "Hoppscotch",
"new_version_found": "Nuova versione trovata. Aggiorna la pagina per aggiornare.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Informativa sulla privacy del proxy",
"reload": "Ricarica",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Genera token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Includi nell'URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Impara come",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Password",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Tipo di autorizzazione",
"username": "Nome utente"
@@ -124,6 +148,7 @@
"created": "Raccolta creata",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Modifica raccolta",
"import_or_create": "Import or create a collection",
"invalid_name": "Si prega di fornire un nome valido per la raccolta",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nuova raccolta",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Raccolta rinominata",
"request_in_use": "Request in use",
"save_as": "Salva come",
@@ -151,6 +178,7 @@
"remove_folder": "Sei sicuro di voler eliminare definitivamente questa cartella?",
"remove_history": "Sei sicuro di voler eliminare definitivamente tutta la cronologia?",
"remove_request": "Sei sicuro di voler eliminare definitivamente questa richiesta?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Sei sicuro di voler eliminare questo team?",
"remove_telemetry": "Sei sicuro di voler disattivare la telemetria?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Intestazione {count}",
"message": "Messaggio {count}",
@@ -192,11 +238,13 @@
"profile": "Accedi per mostrare il tuo profilo",
"protocols": "I protocolli sono vuoti",
"schema": "Connettiti a un endpoint GraphQL per mostrare lo schema",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Il nome del team è vuoto",
"teams": "I team sono vuoti",
"tests": "Non ci sono test per questa richiesta"
"tests": "Non ci sono test per questa richiesta",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Si prega di fornire un nome valido per l'ambiente",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Elenco variabili"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Questo browser non sembra supportare gli eventi inviati dal server (Server Sent Events).",
"check_console_details": "Controlla il log della console per i dettagli.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL non è formattato correttamente",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Impossibile abbellire un corpo non valido, risolvere gli errori di sintassi JSON e riprovare",
"network_error": "Sembra ci sia un problema di rete. Per favore prova di nuovo.",
"network_fail": "Impossibile inviare la richiesta",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Nessuna durata",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Impossibile eseguire lo script di pre-richiesta",
"something_went_wrong": "Qualcosa è andato storto",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Esporta come JSON",
"create_secret_gist": "Crea un Gist segreto",
"failed": "Something went wrong while exporting",
"gist_created": "Gist creato",
"require_github": "Accedi con GitHub per creare un Gist segreto",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Sottoscrizioni",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "L'intestazione di autorizzazione verrà generata automaticamente quando invii la richiesta.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generare prima la documentazione",
"network_fail": "Impossibile raggiungere l'endpoint API. Controlla la tua connessione di rete o accendi il Proxy Interceptor e riprova.",
"offline": "Sembra che tu sia offline. I dati in questo spazio di lavoro potrebbero non essere aggiornati.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importa raccolte",
"curl": "Importa cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importazione non riuscita",
"from_file": "Import from File",
"from_gist": "Importa da Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Inserisci l'URL del Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importa"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Raccolte",
"confirm": "Conferma",
"customize_request": "Customize Request",
"edit_request": "Modifica richiesta",
"import_export": "Importa/Esporta"
"import_export": "Importa/Esporta",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Copia collegamento",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Durata",
"enter_curl": "Inserisci cURL",
"generate_code": "Genera codice",
"generated_code": "Codice generato",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Elenco intestazioni",
"invalid_name": "Si prega di fornire un nome per la richiesta",
"method": "Metodo",
@@ -480,12 +552,14 @@
"saved": "Richiesta salvata",
"share": "Condividi",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Richiesta",
"type": "Tipo di richiesta",
"url": "URL",
"variables": "Variabili",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Copia collegamento"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personalizza le impostazioni del tuo account.",
"account_email_description": "Il tuo indirizzo email principale.",
"account_name_description": "Questo è il tuo nome mostrato.",
"additional": "Additional Settings",
"background": "Sfondo",
"black_mode": "Nero",
"choose_language": "Scegli la lingua",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copia il link alla richiesta",
"delete_method": "Seleziona il metodo DELETE",
"get_method": "Seleziona il metodo GET",
"head_method": "Seleziona il metodo HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Salva nelle raccolte",
"send_request": "Invia richiesta",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Richiesta"
"title": "Richiesta",
"copy_request_link": "Copia il link alla richiesta"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiato negli appunti",
"deleted": "Eliminato",
"deprecated": "DEPRECATO",
@@ -742,10 +836,12 @@
"disconnected": "Disconnesso",
"disconnected_from": "Disconnesso da {name}",
"docs_generated": "Documentazione generata",
"download_failed": "Download failed",
"download_started": "Download avviato",
"enabled": "Abilitato",
"file_imported": "File importato",
"finished_in": "Finito in {duration} ms",
"hide": "Hide",
"history_deleted": "Cronologia cancellata",
"linewrap": "Testo a capo",
"loading": "Caricamento in corso...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Query",
"query": "Query",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Test",
@@ -807,6 +905,7 @@
"email_do_not_match": "L'indirizzo email non corrisponde a quella del tuo account. Contatta il proprietario del team.",
"exit": "Lascia il team",
"exit_disabled": "Solo il proprietario non può lasciare il team",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Il formato dell'email non è valido",
"invalid_id": "L'ID del team non è valido. Contatta il proprietario del team.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Team salvato",
"select_a_team": "Seleziona un team",
"success_invites": "Success invites",
"title": "Team",
"we_sent_invite_link": "Abbiamo inviato un link di invito a tutti gli invitati!",
"we_sent_invite_link_description": "Chiedi a tutti gli invitati di controllare la loro casella email. Cliccando sul link possono entrare nel team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "自動スクロール",
"cancel": "キャンセル",
"choose_file": "ファイルを選択してください",
@@ -10,6 +11,7 @@
"connect": "接続",
"connecting": "接続中",
"copy": "コピー",
"create": "Create",
"delete": "消去",
"disconnect": "切断",
"dismiss": "閉じる",
@@ -31,6 +33,7 @@
"open_workspace": "ワークスペースを開く",
"paste": "貼り付け",
"prettify": "自動整形",
"properties": "Properties",
"remove": "削除",
"rename": "Rename",
"restore": "戻す",
@@ -39,6 +42,7 @@
"scroll_to_top": "上にスクロール",
"search": "検索",
"send": "送信",
"share": "Share",
"start": "はじめる",
"starting": "開始中",
"stop": "止める",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "チャットで問い合わせる",
"contact_us": "お問い合わせ",
"cookies": "Cookies",
"copy": "コピー",
"copy_interface_type": "Copy interface type",
"copy_user_id": "User Auth Tokenをコピー",
"developer_option": "開発者向けオプション",
"developer_option_description": "Hoppscotchの開発に役立つ開発者向けツール",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "キーボードショートカット",
"name": "Hoppscotch",
"new_version_found": "新しいバージョンが見つかりました。再読み込みすると更新されます。",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "オプション",
"proxy_privacy_policy": "プロキシのプライバシーポリシー",
"reload": "更新",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "トークンを生成",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "URLに含める",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "詳しく学ぶ",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "認証元: ",
"password": "パスワード",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "トークン",
"type": "認証タイプ",
"username": "ユーザー名"
@@ -124,6 +148,7 @@
"created": "コレクションが作成されました",
"different_parent": "Cannot reorder collection with different parent",
"edit": "コレクションの編集",
"import_or_create": "Import or create a collection",
"invalid_name": "コレクション名を入力してください",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "コレクション名は3文字以上である必要があります",
"new": "新しいコレクション",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "コレクション名が変更されました",
"request_in_use": "使用中のリクエスト",
"save_as": "名前を付けて保存",
@@ -151,6 +178,7 @@
"remove_folder": "このフォルダを完全に削除してもよろしいですか?",
"remove_history": "すべての履歴を完全に削除してもよろしいですか?",
"remove_request": "このリクエストを完全に削除してもよろしいですか?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "このチームを削除してもよろしいですか?",
"remove_telemetry": "テレメトリをオプトアウトしてもよろしいですか?",
"request_change": "現在のリクエストを削除してもよろしいですか?保存されていない変更は削除されます。",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "ヘッダー {count}",
"message": "メッセージ {count}",
@@ -192,11 +238,13 @@
"profile": "ログインしてプロフィールを見る",
"protocols": "プロトコルがありません",
"schema": "GraphQLエンドポイントに接続する",
"shortcodes": "ショートコードはありません",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "サブスクリプションはありません",
"team_name": "チーム名がありません",
"teams": "チームに参加していません",
"tests": "このリクエストのテストはありません"
"tests": "このリクエストのテストはありません",
"shortcodes": "ショートコードはありません"
},
"environment": {
"add_to_global": "環境変数をGlobalに追加",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "環境変数名を入力してください",
"list": "Environment variables",
"my_environments": "個人の環境変数",
@@ -232,8 +281,10 @@
"variable_list": "環境変数リスト"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "このブラウザはServer-Sent Eventsをサポートしていないようです。",
"check_console_details": "詳細については、コンソールログを確認してください。",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURLが正しくフォーマットされていません",
"danger_zone": "危険",
"delete_account": "あなたのアカウントは以下のチームのオーナーとなっています:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "ボディを整形できませんでした。JSONの構文エラーを解決して再試行してください。",
"network_error": "ネットワークエラーが発生したようです。もう一度お試しください。",
"network_fail": "リクエストを送信できませんでした",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "期間なし",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "該当するものがありませんでした",
"page_not_found": "このページは見つかりませんでした",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "リクエスト前のスクリプトを実行できませんでした",
"something_went_wrong": "不明なエラーです",
@@ -260,6 +314,7 @@
"export": {
"as_json": "JSONとしてエクスポート",
"create_secret_gist": "Secret Gistを作成",
"failed": "Something went wrong while exporting",
"gist_created": "Gistが作成されました",
"require_github": "GitHubにログインしてSecret Gistを作成",
"title": "エクスポート"
@@ -286,6 +341,9 @@
"subscriptions": "サブスクリプション",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "時間",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "リクエストを送信すると、認証ヘッダーが自動的に生成されます。",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "最初にドキュメントを生成する",
"network_fail": "APIエンドポイントに到達できません。ネットワーク接続を確認して再試行してください。",
"offline": "オフラインになっているようです。このワークスペースのデータは最新でない可能性があります。",
@@ -316,7 +376,10 @@
"import": {
"collections": "コレクションをインポート",
"curl": "cURLをインポート",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "インポートに失敗しました",
"from_file": "Import from File",
"from_gist": "Gistからインポート",
"from_gist_description": "GistのURLからインポート",
"from_insomnia": "Insomniaからインポート",
@@ -331,11 +394,17 @@
"from_postman_description": "Postmanのコレクションからインポート",
"from_url": "URLからインポート",
"gist_url": "GistのURLを入力してください",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "指定されたURLからデータを取得できませんでした",
"import_from_url_invalid_file_format": "コレクションのインポート中にエラーが発生しました",
"import_from_url_invalid_type": "サポートされていないタイプです。サポートされているのは 'hoppscotch', 'openapi', 'postman', 'insomnia' です。",
"import_from_url_success": "コレクションがインポートされました",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Hoppscotchのコレクション (JSONファイル) からインポート",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "インポート"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "コレクション",
"confirm": "確認",
"customize_request": "Customize Request",
"edit_request": "リクエストの編集",
"import_export": "インポート・エクスポート"
"import_export": "インポート・エクスポート",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "既にこのトピックにサブスクライブしています",
@@ -449,13 +520,14 @@
"structured": "構造化されたデータ",
"text": "テキスト"
},
"copy_link": "リンクをコピー",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "間隔",
"enter_curl": "cURLコマンドを入力してください",
"generate_code": "コードを生成",
"generated_code": "生成されたコード",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "ヘッダーリスト",
"invalid_name": "リクエスト名を入力してください",
"method": "メソッド",
@@ -480,12 +552,14 @@
"saved": "保存されたリクエスト",
"share": "共有",
"share_description": "Hoppscotchを友人に共有",
"share_request": "Share Request",
"stop": "Stop",
"title": "リクエスト",
"type": "リクエストの種類",
"url": "URL",
"variables": "変数",
"view_my_links": "自分のリンクを見る"
"view_my_links": "自分のリンクを見る",
"copy_link": "リンクをコピー"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "アカウント設定をカスタマイズ",
"account_email_description": "プライマリメールアドレス",
"account_name_description": "あなたの表示名",
"additional": "Additional Settings",
"background": "背景",
"black_mode": "ブラック",
"choose_language": "言語を選択",
@@ -559,14 +634,31 @@
"verified_email": "メールアドレスの認証済",
"verify_email": "メールアドレスの認証"
},
"shortcodes": {
"actions": "アクション",
"created_on": "作成日",
"deleted": "ショートコードを削除しました",
"method": "メソッド",
"not_found": "ショートコードが見つかりません",
"short_code": "ショートコード",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "コピーリクエストリンク",
"delete_method": "DELETEメソッドを選択",
"get_method": "GETメソッドを選択",
"head_method": "HEADメソッドを選択",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "コレクションに保存",
"send_request": "リクエストを送信",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "リクエスト"
"title": "リクエスト",
"copy_request_link": "コピーリクエストリンク"
},
"response": {
"copy": "レスポンスをクリップボードにコピー",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "クリップボードにコピーしました",
"deleted": "削除されました",
"deprecated": "非推奨",
@@ -742,10 +836,12 @@
"disconnected": "切断されました",
"disconnected_from": "{名前}から切断されました",
"docs_generated": "生成されたドキュメント",
"download_failed": "Download failed",
"download_started": "ダウンロード開始",
"enabled": "有効",
"file_imported": "インポートされたファイル",
"finished_in": "{duration} msで終了しました",
"hide": "Hide",
"history_deleted": "履歴が削除されました",
"linewrap": "行の折り返し",
"loading": "読み込んでいます...",
@@ -756,6 +852,7 @@
"published_error": "ピック: {topic} にメッセージ: {message} を送信する際に問題が発生しました",
"published_message": "トピック: {topic} にメッセージ: {message} を送信しました",
"reconnection_error": "再接続に失敗",
"show": "Show",
"subscribed_failed": "トピック: {topic} のサブスクライブに失敗",
"subscribed_success": "トピック: {topic} のサブスクライブに成功",
"unsubscribed_failed": "トピック: {topic} のサブスクライブ解除に失敗",
@@ -791,6 +888,7 @@
"queries": "クエリ",
"query": "クエリ",
"schema": "スキーマ",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "テスト",
@@ -807,6 +905,7 @@
"email_do_not_match": "メールアドレスがアカウント情報と一致しません。チームの管理者に連絡してください。",
"exit": "チームから退出",
"exit_disabled": "管理者はチームから退出できません",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "メールアドレスの形式が無効です",
"invalid_id": "チームIDが無効です。チームの管理者に連絡してください。",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "チームが保存されました",
"select_a_team": "チームを選択",
"success_invites": "Success invites",
"title": "チーム",
"we_sent_invite_link": "招待者の皆様に、招待リンクを送信しました!",
"we_sent_invite_link_description": "招待者全員に受信トレイを確認するよう依頼します。リンクをクリックすると、チームに参加できます。"
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "アクション",
"created_on": "作成日",
"deleted": "ショートコードを削除しました",
"method": "メソッド",
"not_found": "ショートコードが見つかりません",
"short_code": "ショートコード",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "자동 스크롤",
"cancel": "취소",
"choose_file": "파일 선택",
@@ -10,6 +11,7 @@
"connect": "연결",
"connecting": "Connecting",
"copy": "복사",
"create": "Create",
"delete": "삭제",
"disconnect": "연결 해제",
"dismiss": "닫기",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "붙여넣기",
"prettify": "구문 강조",
"properties": "Properties",
"remove": "제거",
"rename": "Rename",
"restore": "복원",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "검색",
"send": "보내기",
"share": "Share",
"start": "시작",
"starting": "Starting",
"stop": "정지",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "개발팀과 채팅하기",
"contact_us": "문의하기",
"cookies": "Cookies",
"copy": "복사",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "키보드 단축키",
"name": "호프스카치",
"new_version_found": "새 버전을 찾았습니다. 업데이트하려면 새로고침하세요.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "프록시 개인 정보 보호 정책",
"reload": "새로고침",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "토큰 생성",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "URL에 포함",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "사용법 알아보기",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "전달 방식",
"password": "비밀번호",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "토큰",
"type": "인증 유형",
"username": "사용자 이름"
@@ -124,6 +148,7 @@
"created": "모음집 생성됨",
"different_parent": "Cannot reorder collection with different parent",
"edit": "모음집 편집",
"import_or_create": "Import or create a collection",
"invalid_name": "모음집 이름을 바르게 입력하세요.",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "모음집 이름은 최소 세 글자 이상이어야 합니다.",
"new": "새 모음집",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "모음집 이름이 변경됨",
"request_in_use": "사용 중인 요청",
"save_as": "다른 이름으로 저장",
@@ -151,6 +178,7 @@
"remove_folder": "이 폴더를 영구적으로 삭제하겠습니까?",
"remove_history": "모든 이력을 영구적으로 삭제하겠습니까?",
"remove_request": "이 요청을 영구적으로 삭제하겠습니까?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "이 팀을 삭제하겠습니까?",
"remove_telemetry": "진단 데이터를 보내지 않겠습니까?",
"request_change": "현재 요청을 취소하시겠습니까? 저장되지 않은 변경사항은 삭제됩니다.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "헤더 {count}",
"message": "메시지 {count}",
@@ -192,11 +238,13 @@
"profile": "로그인하여 프로필을 확인합니다.",
"protocols": "프로토콜이 비어 있습니다.",
"schema": "스키마를 보려면 GraphQL 엔드포인트에 연결하세요.",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "팀 이름이 비어 있습니다.",
"teams": "아무 팀에도 속하지 않았습니다.",
"tests": "이 요청에 대한 테스트가 없습니다."
"tests": "이 요청에 대한 테스트가 없습니다.",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "전역 변수에 추가",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "환경 이름을 바르게 입력하세요.",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "변수 목록"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "이 브라우저는 서버 전송 이벤트를 지원하지 않는 것 같습니다.",
"check_console_details": "자세한 내용은 콘솔 로그를 확인하세요.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL 형식이 올바르지 않습니다.",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "잘못된 본문을 구문 강조할 수 없습니다. json 구문 오류를 해결하고 다시 시도하세요.",
"network_error": "네트워크 에러인 것 같습니다. 다시 시도하세요.",
"network_fail": "요청을 보낼 수 없습니다.",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "소요 시간 없음",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "해당 페이지를 찾을 수 없습니다.",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "사전 요청 스크립트를 실행할 수 없습니다.",
"something_went_wrong": "문제가 발생했습니다.",
@@ -260,6 +314,7 @@
"export": {
"as_json": "JSON으로 내보내기",
"create_secret_gist": "Secret Gist 만들기",
"failed": "Something went wrong while exporting",
"gist_created": "Gist가 생성됨",
"require_github": "GitHub에 로그인하여 secret gist 만들기",
"title": "내보내기"
@@ -286,6 +341,9 @@
"subscriptions": "섭스크립션",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "요청을 보낼 때 인증 헤더가 자동으로 생성됩니다.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "문서를 생성하세요.",
"network_fail": "API 엔드포인트에 연결할 수 없습니다. 네트워크 연결을 확인하고 다시 시도하세요.",
"offline": "오프라인 상태인 것 같습니다. 이 작업 공간의 데이터는 최신이 아닐 수 있습니다.",
@@ -316,7 +376,10 @@
"import": {
"collections": "모음집 가져오기",
"curl": "cURL 가져오기",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "가져오기 실패",
"from_file": "Import from File",
"from_gist": "Gist에서 가져오기",
"from_gist_description": "Gist URL에서 가져오기",
"from_insomnia": "Insomnia 형식 가져오기",
@@ -331,11 +394,17 @@
"from_postman_description": "Postman 모음집을 가져옵니다.",
"from_url": "URL에서 가져오기",
"gist_url": "Gist URL 입력",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "URL에서 데이터를 가져올 수 없습니다.",
"import_from_url_invalid_file_format": "모음집을 가져오는데 실패하였습니다.",
"import_from_url_invalid_type": "지원되지 않는 타입입니다. 지원되는 타입은 'hoppscotch', 'openapi', 'postman', 'insomnia' 입니다.",
"import_from_url_success": "모음집을 성공적으로 가져왔습니다.",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "호프스카치 모음집 JSON 파일을 가져옵니다.",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "가져오기"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "모음집",
"confirm": "확인",
"customize_request": "Customize Request",
"edit_request": "요청 수정",
"import_export": "가져오기 / 내보내기"
"import_export": "가져오기 / 내보내기",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "링크 복사",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "소요 시간",
"enter_curl": "cURL 입력",
"generate_code": "코드 생성",
"generated_code": "코드가 생성됨",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "헤더 목록",
"invalid_name": "요청 이름을 바르게 입력하세요.",
"method": "메서드",
@@ -480,12 +552,14 @@
"saved": "요청이 저장됨",
"share": "공유하기",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "제목",
"type": "요청 유형",
"url": "URL",
"variables": "변수",
"view_my_links": "내 링크 보기"
"view_my_links": "내 링크 보기",
"copy_link": "링크 복사"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "계정 설정을 수정합니다.",
"account_email_description": "기본 이메일 주소입니다.",
"account_name_description": "디스플레이 이름입니다.",
"additional": "Additional Settings",
"background": "배경",
"black_mode": "검은 테마",
"choose_language": "언어 선택",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "이메일 확인"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "요청 링크 복사",
"delete_method": "DELETE 메서드 선택",
"get_method": "GET 메서드 선택",
"head_method": "HEAD 메서드 선택",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "모음집에 저장",
"send_request": "요청 보내기",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "요청"
"title": "요청",
"copy_request_link": "요청 링크 복사"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "연결 실패",
"connection_failed": "연결 실패",
"connection_lost": "연결 끊김",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "클립보드에 복사됨",
"deleted": "삭제됨",
"deprecated": "더 이상 사용되지 않음",
@@ -742,10 +836,12 @@
"disconnected": "연결 끊김",
"disconnected_from": "{name}에서 연결 끊김",
"docs_generated": "문서 생성됨",
"download_failed": "Download failed",
"download_started": "다운로드 시작됨",
"enabled": "활성화됨",
"file_imported": "파일을 임포트함",
"finished_in": "{duration}ms 후에 완료 예정",
"hide": "Hide",
"history_deleted": "이력 삭제됨",
"linewrap": "랩 라인",
"loading": "로드 중...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "쿼리",
"query": "쿼리",
"schema": "스키마",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "테스트",
@@ -807,6 +905,7 @@
"email_do_not_match": "이 계정의 이메일이 일치하지 않습니다. 팀 소유자에게 문의하세요.",
"exit": "팀 나가기",
"exit_disabled": "소유자는 팀을 나갈 수 없습니다.",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "이메일을 바르게 입력하세요.",
"invalid_id": "팀 아이디가 올바르지 않습니다. 팀 소유자에게 문의하세요.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "팀이 저장됨",
"select_a_team": "팀을 선택하세요.",
"success_invites": "Success invites",
"title": "팀",
"we_sent_invite_link": "모든 초대 대상에게 초대 링크를 보냈습니다.",
"we_sent_invite_link_description": "초대 대상들이 이메일을 확인하도록 권하세요. 이메일 속 링크를 클릭하면 팀에 합류할 수 있습니다."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Annuleren",
"choose_file": "Kies een bestand",
@@ -10,6 +11,7 @@
"connect": "Verbinden",
"connecting": "Connecting",
"copy": "Kopiëren",
"create": "Create",
"delete": "Verwijderen",
"disconnect": "Verbinding verbreken",
"dismiss": "Afwijzen",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Netter opmaken",
"properties": "Properties",
"remove": "Verwijderen",
"rename": "Rename",
"restore": "Herstellen",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Zoeken",
"send": "Versturen",
"share": "Share",
"start": "Begin",
"starting": "Starting",
"stop": "Stop",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Chat met ons",
"contact_us": "Neem contact op",
"cookies": "Cookies",
"copy": "Kopiëren",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Toetsenbord sneltoetsen",
"name": "Hoppscotch",
"new_version_found": "Nieuwe versie gevonden. Vernieuwen om te updaten.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Proxy-privacybeleid",
"reload": "Herladen",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Token genereren",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Opnemen in URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Leren hoe",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Wachtwoord",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "token",
"type": "Autorisatietype:",
"username": "Gebruikersnaam"
@@ -124,6 +148,7 @@
"created": "Collectie gemaakt",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Verzameling bewerken",
"import_or_create": "Import or create a collection",
"invalid_name": "Geef een geldige naam op voor de collectie",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nieuwe collectie",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Collectie hernoemd",
"request_in_use": "Request in use",
"save_as": "Opslaan als",
@@ -151,6 +178,7 @@
"remove_folder": "Weet u zeker dat u deze map permanent wilt verwijderen?",
"remove_history": "Weet je zeker dat je de hele geschiedenis permanent wilt verwijderen?",
"remove_request": "Weet u zeker dat u dit verzoek definitief wilt verwijderen?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Weet je zeker dat je dit team wilt verwijderen?",
"remove_telemetry": "Weet u zeker dat u zich wilt afmelden voor telemetrie?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Kop {count}",
"message": "Bericht {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protocollen zijn leeg",
"schema": "Verbinding maken met een GraphQL-eindpunt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Teamnaam leeg",
"teams": "Teams zijn leeg",
"tests": "Er zijn geen tests voor dit verzoek"
"tests": "Er zijn geen tests voor dit verzoek",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Geef een geldige naam op voor de omgeving",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Variabele lijst"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Deze browser lijkt geen ondersteuning te hebben voor door de server verzonden gebeurtenissen.",
"check_console_details": "Controleer het consolelogboek voor details.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL is niet correct geformatteerd",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Kon een ongeldige hoofdtekst niet mooier maken, json-syntaxisfouten oplossen en opnieuw proberen",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Kan verzoek niet versturen",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Geen duur",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Kon pre-aanvraagscript niet uitvoeren",
"something_went_wrong": "Er is iets fout gegaan",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exporteren als JSON",
"create_secret_gist": "Maak geheime kern",
"failed": "Something went wrong while exporting",
"gist_created": "Kern gemaakt",
"require_github": "Log in met GitHub om een geheime kern te maken",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Abonnementen",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "De autorisatieheader wordt automatisch gegenereerd wanneer u het verzoek verzendt.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Genereer eerst documentatie",
"network_fail": "Kan het API-eindpunt niet bereiken. Controleer uw netwerkverbinding en probeer het opnieuw.",
"offline": "Je lijkt offline te zijn. Gegevens in deze werkruimte zijn mogelijk niet up-to-date.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Collecties importeren",
"curl": "cURL-commando importeren",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importeren mislukt",
"from_file": "Import from File",
"from_gist": "Importeren uit Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Vul de hoofd-URL in",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importeren"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Collecties",
"confirm": "Bevestigen",
"customize_request": "Customize Request",
"edit_request": "Verzoek bewerken",
"import_export": "Importeren / exporteren"
"import_export": "Importeren / exporteren",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopieer link",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Duur",
"enter_curl": "Voer cURL . in",
"generate_code": "Genereer code",
"generated_code": "Gegenereerde code",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Koplijst",
"invalid_name": "Geef een naam op voor het verzoek",
"method": "Methode",
@@ -480,12 +552,14 @@
"saved": "Verzoek opgeslagen",
"share": "Deel",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Verzoek",
"type": "Aanvraag type",
"url": "URL",
"variables": "Variabelen",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopieer link"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Pas uw accountinstellingen aan.",
"account_email_description": "Uw primaire e-mailadres.",
"account_name_description": "Dit is uw weergavenaam.",
"additional": "Additional Settings",
"background": "Achtergrond",
"black_mode": "zwart",
"choose_language": "Kies een taal",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopieer aanvraaglink",
"delete_method": "Selecteer DELETE-methode",
"get_method": "Selecteer GET-methode",
"head_method": "Selecteer HEAD-methode:",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Opslaan in collecties",
"send_request": "Verstuur verzoek",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Verzoek"
"title": "Verzoek",
"copy_request_link": "Kopieer aanvraaglink"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Gekopieerd naar het klembord",
"deleted": "verwijderd",
"deprecated": "VEROUDERD",
@@ -742,10 +836,12 @@
"disconnected": "Verbinding verbroken",
"disconnected_from": "Verbinding verbroken met {name}",
"docs_generated": "Documentatie gegenereerd",
"download_failed": "Download failed",
"download_started": "Download gestart",
"enabled": "ingeschakeld",
"file_imported": "Bestand geïmporteerd",
"finished_in": "Klaar in {duration} ms",
"hide": "Hide",
"history_deleted": "Geschiedenis verwijderd",
"linewrap": "Regels afbreken",
"loading": "Bezig met laden...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Queries",
"query": "Query",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testen",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Team verlaten",
"exit_disabled": "Alleen de eigenaar kan het team niet verlaten",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E-mailindeling is ongeldig",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Team gered",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "teams",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Avbryt",
"choose_file": "Velg en fil",
@@ -10,6 +11,7 @@
"connect": "Koble",
"connecting": "Connecting",
"copy": "Kopiere",
"create": "Create",
"delete": "Slett",
"disconnect": "Koble fra",
"dismiss": "Avbryt",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Forskjønn",
"properties": "Properties",
"remove": "Ta bort",
"rename": "Rename",
"restore": "Gjenopprett",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Søk",
"send": "Sende",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Stoppe",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Snakk med oss",
"contact_us": "Kontakt oss",
"cookies": "Cookies",
"copy": "Kopiere",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Tastatursnarveier",
"name": "Hoppscotch",
"new_version_found": "Ny versjon funnet. Last ned for å oppdatere.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Personvernerklæring for proxy",
"reload": "Last på nytt",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generer nøkkel",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Inkluder i URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Lær hvordan",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Passord",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Nøkkel",
"type": "Godkjenningstype",
"username": "Brukernavn"
@@ -124,6 +148,7 @@
"created": "Samlingen er opprettet",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Rediger samling",
"import_or_create": "Import or create a collection",
"invalid_name": "Oppgi et gyldig navn på samlingen",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Ny kolleksjon",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Samlingen ble omdøpt",
"request_in_use": "Request in use",
"save_as": "Lagre som",
@@ -151,6 +178,7 @@
"remove_folder": "Er du sikker på at du vil slette denne mappen for godt?",
"remove_history": "Er du sikker på at du vil slette all historikk permanent?",
"remove_request": "Er du sikker på at du vil slette denne forespørselen for godt?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Er du sikker på at du vil slette dette laget?",
"remove_telemetry": "Er du sikker på at du vil velge bort telemetri?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Overskrift {count}",
"message": "Melding {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokoller er tomme",
"schema": "Koble til et GraphQL-endepunkt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Lagnavnet er tomt",
"teams": "Lagene er tomme",
"tests": "Det er ingen tester for denne forespørselen"
"tests": "Det er ingen tester for denne forespørselen",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Oppgi et gyldig navn på miljøet",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Variabel liste"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Denne nettleseren ser ikke ut til å ha Server Sent Events -støtte.",
"check_console_details": "Sjekk konsollloggen for detaljer.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL er ikke riktig formatert",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Kunne ikke forskjønne et ugyldig brødtekst, løse json -syntaksfeil og prøve igjen",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Kunne ikke sende forespørsel",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Ingen varighet",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Kunne ikke kjøre forhåndsforespørselsskript",
"something_went_wrong": "Noe gikk galt",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Eksporter som JSON",
"create_secret_gist": "Lag hemmelig Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist opprettet",
"require_github": "Logg på med GitHub for å lage en hemmelig oppgave",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Abonnementer",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Autorisasjonsoverskriften genereres automatisk når du sender forespørselen.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Lag dokumentasjon først",
"network_fail": "Kan ikke nå API-endepunktet. Kontroller nettverkstilkoblingen og prøv igjen.",
"offline": "Du ser ut til å være frakoblet. Data i dette arbeidsområdet er kanskje ikke oppdatert.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importer samlinger",
"curl": "Importer cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Import mislyktes",
"from_file": "Import from File",
"from_gist": "Import fra Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Skriv inn Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Import"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Samlinger",
"confirm": "Bekrefte",
"customize_request": "Customize Request",
"edit_request": "Rediger forespørsel",
"import_export": "Import / Eksport"
"import_export": "Import / Eksport",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopier link",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Varighet",
"enter_curl": "Skriv inn cURL",
"generate_code": "Generer kode",
"generated_code": "Generert kode",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Toppliste",
"invalid_name": "Oppgi et navn på forespørselen",
"method": "Metode",
@@ -480,12 +552,14 @@
"saved": "Forespørselen er lagret",
"share": "Dele",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Be om",
"type": "Type forespørsel",
"url": "URL",
"variables": "Variabler",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopier link"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Tilpass kontoinnstillingene dine.",
"account_email_description": "Din primære e-postadresse.",
"account_name_description": "Dette er visningsnavnet ditt.",
"additional": "Additional Settings",
"background": "Bakgrunn",
"black_mode": "Svart",
"choose_language": "Velg språk",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopier forespørselskobling",
"delete_method": "Velg SLETT metoden",
"get_method": "Velg GET-metode",
"head_method": "Velg HEAD-metode",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Lagre i samlinger",
"send_request": "Send forespørsel",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Be om"
"title": "Be om",
"copy_request_link": "Kopier forespørselskobling"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Kopiert til utklippstavlen",
"deleted": "Slettet",
"deprecated": "FORELDET",
@@ -742,10 +836,12 @@
"disconnected": "Frakoblet",
"disconnected_from": "Koblet fra {name}",
"docs_generated": "Dokumentasjon generert",
"download_failed": "Download failed",
"download_started": "Nedlastingen startet",
"enabled": "Aktivert",
"file_imported": "Fil importert",
"finished_in": "Ferdig om {duration} ms",
"hide": "Hide",
"history_deleted": "Historikk slettet",
"linewrap": "Brekk linjer",
"loading": "Laster inn ...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Forespørsler",
"query": "Spørsmål",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Tester",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Avslutt Team",
"exit_disabled": "Bare eieren kan ikke gå ut av teamet",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E -postformatet er ugyldig",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Lag reddet",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Lag",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "anuluj",
"choose_file": "Wybierz plik",
@@ -10,6 +11,7 @@
"connect": "Połącz",
"connecting": "Connecting",
"copy": "Kopiuj",
"create": "Create",
"delete": "Usuń",
"disconnect": "Rozłącz",
"dismiss": "Odrzuć",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Popraw czytelność",
"properties": "Properties",
"remove": "Usuń",
"rename": "Rename",
"restore": "Przywróć",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Szukaj",
"send": "Wyślij",
"share": "Share",
"start": "Rozpocznij",
"starting": "Starting",
"stop": "Zatrzymaj",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Porozmawiaj z nami",
"contact_us": "Skontaktuj się z nami",
"cookies": "Cookies",
"copy": "Kopiuj",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Skróty klawiszowe",
"name": "Hoppscotch",
"new_version_found": "Znaleziono nową wersję. Odśwież, aby zaktualizować.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Polityka prywatności proxy",
"reload": "Przeładuj",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Wygeneruj token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Uwzględnij w adresie URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Naucz się jak",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Hasło",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Typ autoryzacji",
"username": "Nazwa użytkownika"
@@ -124,6 +148,7 @@
"created": "Utworzono kolekcję",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Edytuj kolekcję",
"import_or_create": "Import or create a collection",
"invalid_name": "Podaj prawidłową nazwę kolekcji",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nowa kolekcja",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Zmieniono nazwę kolekcji",
"request_in_use": "Request in use",
"save_as": "Zapisz jako",
@@ -151,6 +178,7 @@
"remove_folder": "Czy na pewno chcesz trwale usunąć ten folder?",
"remove_history": "Czy na pewno chcesz trwale usunąć całą historię?",
"remove_request": "Czy na pewno chcesz trwale usunąć te żądanie?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Czy na pewno chcesz usunąć ten zespół?",
"remove_telemetry": "Czy na pewno chcesz zrezygnować z telemetrii?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Nagłówek {count}",
"message": "Wiadomość {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokoły są puste",
"schema": "Połącz się z punktem końcowym GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Nazwa zespołu jest pusta",
"teams": "Zespoły są puste",
"tests": "Nie ma testów dla tego żądania"
"tests": "Nie ma testów dla tego żądania",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Podaj prawidłową nazwę środowiska",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Lista zmiennych"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Wygląda na to, że ta przeglądarka nie obsługuje zdarzeń wysłanych przez serwer.",
"check_console_details": "Sprawdź dziennik konsoli, aby uzyskać szczegółowe informacje.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL nie jest poprawnie sformatowany",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Nie można poprawić czytelności nieprawidłowej treści, napraw błędy składni json i spróbuj ponownie",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Nie udało się wysłać zapytania",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Brak czasu trwania",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Nie można wykonać skryptu żądania wstępnego",
"something_went_wrong": "Coś poszło nie tak",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Eksportuj jako JSON",
"create_secret_gist": "Utwórz tajny Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Utworzono Gist",
"require_github": "Zaloguj się za pomocą GitHub, aby utworzyć tajny Gist",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Subskrypcje",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Nagłówek autoryzacji zostanie wygenerowany automatycznie po wysłaniu żądania.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Najpierw wygeneruj dokumentację",
"network_fail": "Nie można połączyć się z punktem końcowym interfejsu API. Sprawdź połączenie sieciowe i spróbuj ponownie.",
"offline": "Wygląda na to, że jesteś offline. Dane w tym obszarze roboczym mogą być nieaktualne.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importuj kolekcje",
"curl": "Importuj CURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Import nie powiódł się",
"from_file": "Import from File",
"from_gist": "Importuj z Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Wpisz adres URL Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Import"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Kolekcje",
"confirm": "Potwierdź",
"customize_request": "Customize Request",
"edit_request": "Edytuj żądanie",
"import_export": "Import Eksport"
"import_export": "Import Eksport",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Skopiuj link",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Czas trwania",
"enter_curl": "Wpisz cURL",
"generate_code": "Wygeneruj kod",
"generated_code": "Wygenerowany kod",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Lista nagłówków",
"invalid_name": "Podaj nazwę żądania",
"method": "metoda",
@@ -480,12 +552,14 @@
"saved": "Żądanie zostało zapisane",
"share": "Udostępnij",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Żądanie",
"type": "Typ żądania",
"url": "URL",
"variables": "Zmienne",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Skopiuj link"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Dostosuj ustawienia swojego konta.",
"account_email_description": "Twój podstawowy adres e-mail.",
"account_name_description": "To jest Twoja nazwa wyświetlana.",
"additional": "Additional Settings",
"background": "Tło",
"black_mode": "Czarny",
"choose_language": "Wybierz język",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopiuj łącze żądania",
"delete_method": "Wybierz metodę DELETE",
"get_method": "Wybierz metodę GET",
"head_method": "Wybierz metodę HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Zapisz w kolekcjach",
"send_request": "Wyślij żądanie",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Żądania"
"title": "Żądania",
"copy_request_link": "Kopiuj łącze żądania"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Skopiowane do schowka",
"deleted": "Usunięto",
"deprecated": "PRZESTARZAŁE",
@@ -742,10 +836,12 @@
"disconnected": "Rozłączono",
"disconnected_from": "Rozłączono z {name}",
"docs_generated": "Wygenerowana dokumentacja",
"download_failed": "Download failed",
"download_started": "Pobieranie rozpoczęte",
"enabled": "Włączony",
"file_imported": "Zaimportowany plik",
"finished_in": "Zakończono za {duration} ms",
"hide": "Hide",
"history_deleted": "Historia została usunięta",
"linewrap": "Zawijaj linie",
"loading": "Ładowanie...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Zapytania",
"query": "Zapytanie",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testy",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Opóść zespół",
"exit_disabled": "Tylko właściciel nie może opuścić zespołu",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Format e-maila jest nieprawidłowy",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Zespół zapisany",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Zespoły",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Cancelar",
"choose_file": "Escolha um arquivo",
@@ -10,6 +11,7 @@
"connect": "Conectar",
"connecting": "Connecting",
"copy": "Copiar",
"create": "Create",
"delete": "Excluir",
"disconnect": "Desconectar",
"dismiss": "Dispensar",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Colar",
"prettify": "Embelezar",
"properties": "Properties",
"remove": "Remover",
"rename": "Rename",
"restore": "Restaurar",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Procurar",
"send": "Enviar",
"share": "Share",
"start": "Começar",
"starting": "Starting",
"stop": "Pare",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Converse conosco",
"contact_us": "Contate-Nos",
"cookies": "Cookies",
"copy": "Copiar",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copiar token de autenticação do usuário",
"developer_option": "Opções de desenvolvedor",
"developer_option_description": "Opções de desenvolvedor que ajudam no desenvolvimento e manutenção do Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Atalhos do teclado",
"name": "Hoppscotch",
"new_version_found": "Nova versão encontrada. Atualize para atualizar.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Opções",
"proxy_privacy_policy": "Política de privacidade do proxy",
"reload": "Recarregar",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Gerar token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Incluir no URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Aprenda como",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Senha",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Símbolo",
"type": "Tipo de Autorização",
"username": "Nome do usuário"
@@ -124,6 +148,7 @@
"created": "Coleção criada",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Editar coleção",
"import_or_create": "Import or create a collection",
"invalid_name": "Forneça um nome válido para a coleção",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "O nome da coleção deve ter pelo menos 3 caracteres",
"new": "Nova coleção",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Coleção renomeada",
"request_in_use": "Requisição em uso",
"save_as": "Salvar como",
@@ -151,6 +178,7 @@
"remove_folder": "Tem certeza de que deseja excluir esta pasta permanentemente?",
"remove_history": "Tem certeza de que deseja excluir permanentemente todo o histórico?",
"remove_request": "Tem certeza de que deseja excluir permanentemente esta solicitação?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Tem certeza que deseja excluir esta equipe?",
"remove_telemetry": "Tem certeza de que deseja cancelar a telemetria?",
"request_change": "Tem certeza que deseja descartar a requisição atual? Alterações não salvas serão perdidas.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Cabeçalho {count}",
"message": "Mensagem {count}",
@@ -192,11 +238,13 @@
"profile": "Entre para visualizar seu perfil",
"protocols": "Os protocolos estão vazios",
"schema": "Conecte-se a um endpoint GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Nome da equipe vazio",
"teams": "Equipes estão vazias",
"tests": "Não há testes para esta requisição"
"tests": "Não há testes para esta requisição",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Adicionar ao Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Forneça um nome válido para o ambiente",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Lista de Variáveis"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Este navegador não parece ter suporte para eventos enviados pelo servidor.",
"check_console_details": "Verifique o log do console para obter detalhes.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL não está formatado corretamente",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Não foi possível embelezar um corpo inválido, resolver erros de sintaxe json e tentar novamente",
"network_error": "Parece que houve um problema de rede. Por favor, tente novamente.",
"network_fail": "Não foi possível enviar requisição",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Sem duração",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Não foi possível executar o script pré-requisição",
"something_went_wrong": "Algo deu errado",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportar como JSON",
"create_secret_gist": "Crie um gist secreto",
"failed": "Something went wrong while exporting",
"gist_created": "Gist criado",
"require_github": "Faça login com GitHub para criar um gist secreta",
"title": "Exportar"
@@ -286,6 +341,9 @@
"subscriptions": "Assinaturas",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "O cabeçalho da autorização será gerado automaticamente quando você enviar a solicitação.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Gere a documentação primeiro",
"network_fail": "Incapaz de alcançar o endpoint da API. Verifique sua conexão de rede e tente novamente.",
"offline": "Você parece estar offline. Os dados neste espaço de trabalho podem não estar atualizados.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importar coleções",
"curl": "Importar cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "A importação falhou",
"from_file": "Import from File",
"from_gist": "Importar do Gist",
"from_gist_description": "Importar de URL Gist",
"from_insomnia": "Importar de Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Importa de coleção Postman",
"from_url": "Importar de URL",
"gist_url": "Insira o URL do Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Importa coleções de um arquivo JSON de Coleções Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importar"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Coleções",
"confirm": "confirme",
"customize_request": "Customize Request",
"edit_request": "Editar pedido",
"import_export": "Importar / Exportar"
"import_export": "Importar / Exportar",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Link de cópia",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Duração",
"enter_curl": "Digite cURL",
"generate_code": "Gerar código",
"generated_code": "Código gerado",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Lista de Cabeçalhos",
"invalid_name": "Forneça um nome para a requisição",
"method": "Método",
@@ -480,12 +552,14 @@
"saved": "Requisição salva",
"share": "Compartilhadar",
"share_description": "Compartilhe o Hoppscotch com seus amigos",
"share_request": "Share Request",
"stop": "Stop",
"title": "Solicitar",
"type": "Tipo de requisição",
"url": "URL",
"variables": "Variáveis",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Link de cópia"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personalize as configurações da sua conta.",
"account_email_description": "Seu endereço de e-mail principal.",
"account_name_description": "Este é o seu nome de exibição.",
"additional": "Additional Settings",
"background": "Fundo",
"black_mode": "Preto",
"choose_language": "Escolha o seu idioma",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verificar email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copiar link de requisição",
"delete_method": "Selecione o método DELETE",
"get_method": "Selecione o método GET",
"head_method": "Selecione o método HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Salvar em coleções",
"send_request": "Enviar requisição",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Solicitar"
"title": "Solicitar",
"copy_request_link": "Copiar link de requisição"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiado para a área de transferência",
"deleted": "Excluído",
"deprecated": "DESCONTINUADA",
@@ -742,10 +836,12 @@
"disconnected": "Desconectado",
"disconnected_from": "Desconectado de {name}",
"docs_generated": "Documentação gerada",
"download_failed": "Download failed",
"download_started": "Download iniciado",
"enabled": "Habilitado",
"file_imported": "Arquivo importado",
"finished_in": "Terminado em {duration} ms",
"hide": "Hide",
"history_deleted": "Histórico excluído",
"linewrap": "Quebrar linhas",
"loading": "Carregando...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Consultas",
"query": "Consulta",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testes",
@@ -807,6 +905,7 @@
"email_do_not_match": "O e-mail não corresponde aos detalhes da sua conta. Contate o dono da sua equipe.",
"exit": "Sair da equipe",
"exit_disabled": "Apenas o dono não pode sair da equipe",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "O formato do email é inválido",
"invalid_id": "ID de time inválido. Contate o dono da sua equipe.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Equipe salva",
"select_a_team": "Selecione uma equipe",
"success_invites": "Success invites",
"title": "Equipes",
"we_sent_invite_link": "Link de convite enviado para todos os convidados!",
"we_sent_invite_link_description": "Peça a todos os convidados que verifiquem sua caixa de entrada. Clique no link para se juntar à equipe."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Cancelar",
"choose_file": "Escolha um arquivo",
@@ -10,6 +11,7 @@
"connect": "Conectar",
"connecting": "Connecting",
"copy": "cópia de",
"create": "Create",
"delete": "Excluir",
"disconnect": "desconectar",
"dismiss": "Dispensar",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Embelezar",
"properties": "Properties",
"remove": "Remover",
"rename": "Rename",
"restore": "Restaurar",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Procurar",
"send": "Mandar",
"share": "Share",
"start": "Começar",
"starting": "Starting",
"stop": "Pare",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Converse conosco",
"contact_us": "Contate-Nos",
"cookies": "Cookies",
"copy": "cópia de",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Atalhos do teclado",
"name": "Hoppscotch",
"new_version_found": "Nova versão encontrada. Atualize para atualizar.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Política de privacidade do proxy",
"reload": "recarregar",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Gerar token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Incluir no URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Aprenda como",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Senha",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Símbolo",
"type": "Tipo de Autorização",
"username": "Nome do usuário"
@@ -124,6 +148,7 @@
"created": "Coleção criada",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Editar coleção",
"import_or_create": "Import or create a collection",
"invalid_name": "Forneça um nome válido para a coleção",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Nova coleção",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Coleção renomeada",
"request_in_use": "Request in use",
"save_as": "Salvar como",
@@ -151,6 +178,7 @@
"remove_folder": "Tem certeza de que deseja excluir esta pasta permanentemente?",
"remove_history": "Tem certeza de que deseja excluir permanentemente todo o histórico?",
"remove_request": "Tem certeza de que deseja excluir permanentemente esta solicitação?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Tem certeza que deseja excluir esta equipe?",
"remove_telemetry": "Tem certeza de que deseja cancelar a telemetria?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Cabeçalho {count}",
"message": "Mensagem {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Os protocolos estão vazios",
"schema": "Conecte-se a um endpoint GraphQL",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Nome do time vazio",
"teams": "Times estão vazios",
"tests": "Não há testes para esta solicitação"
"tests": "Não há testes para esta solicitação",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Forneça um nome válido para o ambiente",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Lista de Variáveis"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Este navegador não parece ter suporte para eventos enviados pelo servidor.",
"check_console_details": "Verifique o log do console para obter detalhes.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL não está formatado corretamente",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Não foi possível embelezar um corpo inválido, resolver erros de sintaxe json e tentar novamente",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Não foi possível enviar pedido",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Sem duração",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Não foi possível executar o script de pré-solicitação",
"something_went_wrong": "Algo deu errado",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportar como JSON",
"create_secret_gist": "Crie uma essência secreta",
"failed": "Something went wrong while exporting",
"gist_created": "Gist criado",
"require_github": "Faça login com GitHub para criar uma essência secreta",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Assinaturas",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "O cabeçalho da autorização será gerado automaticamente quando você enviar a solicitação.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Gere a documentação primeiro",
"network_fail": "Incapaz de alcançar o endpoint da API. Verifique sua conexão de rede e tente novamente.",
"offline": "Você parece estar offline. Os dados neste espaço de trabalho podem não estar atualizados.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importar coleções",
"curl": "Importar cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "A importação falhou",
"from_file": "Import from File",
"from_gist": "Importar do Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Insira o URL da essência",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importar"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Coleções",
"confirm": "confirme",
"customize_request": "Customize Request",
"edit_request": "Editar pedido",
"import_export": "Importar / Exportar"
"import_export": "Importar / Exportar",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Link de cópia",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Duração",
"enter_curl": "Digite cURL",
"generate_code": "Gerar código",
"generated_code": "Código gerado",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Lista de Cabeçalhos",
"invalid_name": "Forneça um nome para o pedido",
"method": "Método",
@@ -480,12 +552,14 @@
"saved": "Pedido salvo",
"share": "Compartilhado",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Solicitar",
"type": "Tipo de solicitação",
"url": "URL",
"variables": "Variáveis",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Link de cópia"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personalize as configurações da sua conta.",
"account_email_description": "Seu endereço de e-mail principal.",
"account_name_description": "Este é o seu nome de exibição.",
"additional": "Additional Settings",
"background": "Fundo",
"black_mode": "Preto",
"choose_language": "Escolha o seu idioma",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copiar link de solicitação",
"delete_method": "Selecione o método DELETE",
"get_method": "Selecione o método GET",
"head_method": "Selecione o método HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Salvar em coleções",
"send_request": "Enviar pedido",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Solicitar"
"title": "Solicitar",
"copy_request_link": "Copiar link de solicitação"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiado para a área de transferência",
"deleted": "Excluído",
"deprecated": "DESCONTINUADA",
@@ -742,10 +836,12 @@
"disconnected": "Desconectado",
"disconnected_from": "Desconectado de {name}",
"docs_generated": "Documentação gerada",
"download_failed": "Download failed",
"download_started": "Download iniciado",
"enabled": "Habilitado",
"file_imported": "Arquivo importado",
"finished_in": "Terminado em {duration} ms",
"hide": "Hide",
"history_deleted": "Histórico excluído",
"linewrap": "Quebrar linhas",
"loading": "Carregando...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Consultas",
"query": "Consulta",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testes",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Sair da equipe",
"exit_disabled": "Apenas o dono não pode sair da equipe",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "O formato do email é inválido",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Equipe salva",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Times",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Derulare automată",
"cancel": "Anulare",
"choose_file": "Alegeți un fișier",
@@ -10,6 +11,7 @@
"connect": "Conectare",
"connecting": "Connecting",
"copy": "Copiază",
"create": "Create",
"delete": "Șterge",
"disconnect": "Deconectare",
"dismiss": "Renunță",
@@ -31,6 +33,7 @@
"open_workspace": "Deschide spațiul de lucru",
"paste": "Lipește",
"prettify": "Formatează",
"properties": "Properties",
"remove": "Elimină",
"rename": "Rename",
"restore": "Restabilește",
@@ -39,6 +42,7 @@
"scroll_to_top": "Derulare la început",
"search": "Căutare",
"send": "Trimite",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Stop",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Vorbeste cu noi",
"contact_us": "Contactează-ne",
"cookies": "Cookies",
"copy": "Copiază",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copiază token-ul de autentificare",
"developer_option": "Setări pentru dezvoltatori",
"developer_option_description": "Unelte pentru dezvoltatori care ajută în dezvoltarea și menținerea Hoopscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Comenzi rapide de la tastatură",
"name": "Hoppscotch",
"new_version_found": "Nouă versiune găsită. Reîmprospătați pentru a actualiza.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Opțiuni",
"proxy_privacy_policy": "Politica de confidențialitate proxy",
"reload": "Reîncarcă",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generați token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Includeți în URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Află cum",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Transimteți cheia",
"password": "Parolă",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Tipul de autorizare",
"username": "Nume de utilizator"
@@ -124,6 +148,7 @@
"created": "Colecție creată",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Editați colecția",
"import_or_create": "Import or create a collection",
"invalid_name": "Vă rugăm să furnizați un nume valid pentru colecție",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Numele colecției trebuie să aibă minim 3 caractere lungime",
"new": "Colecție nouă",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Colecția redenumită",
"request_in_use": "Cerere în executare",
"save_as": "Salvează ca",
@@ -151,6 +178,7 @@
"remove_folder": "Sigur doriți să ștergeți definitiv acest folder?",
"remove_history": "Sigur doriți să ștergeți definitiv tot istoricul?",
"remove_request": "Sigur doriți să ștergeți definitiv această solicitare?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Sigur doriți să ștergeți această echipă?",
"remove_telemetry": "Sigur doriți să renunțați la telemetrie?",
"request_change": "Sigur doriți să renunțați la cererea curentă? Modificările nesalvate se vor pierde.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Antet {count}",
"message": "Număr de mesaje",
@@ -192,11 +238,13 @@
"profile": "Autentificați-vă pentru a putea vizualiza profilul",
"protocols": "Protocoalele sunt goale",
"schema": "Conectați-vă la un Endpoint GraphQL",
"shortcodes": "Codurile scurte sunt goale",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Numele echipei este gol",
"teams": "Echipele sunt goale",
"tests": "Nu există teste pentru această solicitare"
"tests": "Nu există teste pentru această solicitare",
"shortcodes": "Codurile scurte sunt goale"
},
"environment": {
"add_to_global": "Adaugă global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Vă rugăm să furnizați un nume valid pentru mediu",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Lista variabilelor"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Acest browser pare să nu aibă suport pentru Server Sent Events.",
"check_console_details": "Verificați jurnalul consolei pentru detalii.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL nu este formatat corect",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Nu s-a putut formata un corp invalid, rezolvați erorile de sintaxă JSON și încercați din nou",
"network_error": "Probleme cu conexiunea. Încercați din nou.",
"network_fail": "Nu s-a putut trimite solicitarea",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Fără durată",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Nu au fost găsite potriviri",
"page_not_found": "Pagina nu a putut fi găsită",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Nu s-a putut executa scriptul",
"something_went_wrong": "Ceva nu a mers bine",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportați ca JSON",
"create_secret_gist": "Creați Gist secret",
"failed": "Something went wrong while exporting",
"gist_created": "Gist creat",
"require_github": "Conectați-vă cu GitHub pentru a crea un Gist secret",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Abonamente",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Antetul autorizației va fi generat automat la trimiterea cererii.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Generați mai întâi documentația",
"network_fail": "Imposibil de atins endpoint-ul API. Verificați conexiunea la rețea și încercați din nou.",
"offline": "Pari să fii offline. Este posibil ca datele din acest spațiu de lucru să nu fie actualizate.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importați colecții",
"curl": "Importați cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importul nu a reușit",
"from_file": "Import from File",
"from_gist": "Importați din Gist",
"from_gist_description": "Importați din Gist URL",
"from_insomnia": "Importați din Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Importați dintr-o colecție Postman",
"from_url": "Importați prin URL",
"gist_url": "Introduceți adresa URL Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Nu s-au putut obține date de la URL",
"import_from_url_invalid_file_format": "Eroare la importarea colecțiilor",
"import_from_url_invalid_type": "Tip nesuportat. Valorile acceptate sunt 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Colecții importate",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Importați colecții dintr-un fisier de collectii JSON Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Import"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Colecții",
"confirm": "Confirmă",
"customize_request": "Customize Request",
"edit_request": "Solicită editare",
"import_export": "Import Export"
"import_export": "Import Export",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structurat",
"text": "Text"
},
"copy_link": "Copiază legătură",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Durată",
"enter_curl": "Introduceți cURL",
"generate_code": "Generați cod",
"generated_code": "Cod generat",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Lista anteturilor",
"invalid_name": "Vă rugăm să furnizați un nume pentru cerere",
"method": "Metodă",
@@ -480,12 +552,14 @@
"saved": "Cererea a fost salvată",
"share": "Distribuie",
"share_description": "Distribuie Hoppscotch către prietenii tăi",
"share_request": "Share Request",
"stop": "Stop",
"title": "Cerere",
"type": "Tip de cerere",
"url": "URL",
"variables": "Variabile",
"view_my_links": "Vizualizare link-uri"
"view_my_links": "Vizualizare link-uri",
"copy_link": "Copiază legătură"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Personalizați setările contului.",
"account_email_description": "Adresa dvs. de e-mail principală.",
"account_name_description": "Acesta este numele dvs. afișat.",
"additional": "Additional Settings",
"background": "Fundal",
"black_mode": "Negru",
"choose_language": "Alege limba",
@@ -559,14 +634,31 @@
"verified_email": "Adresă de email verificată",
"verify_email": "Verificați adresa de email"
},
"shortcodes": {
"actions": "Acțiuni",
"created_on": "Creat la",
"deleted": "Cod scurt șters",
"method": "Metodă",
"not_found": "Codul scurt nu a fost găsit",
"short_code": "Cod scurt",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Copiați legătura de solicitare",
"delete_method": "Selectați metoda DELETE",
"get_method": "Selectați metoda GET",
"head_method": "Selectați metoda HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Salvați în colecții",
"send_request": "Trimite cerere",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Cerere"
"title": "Cerere",
"copy_request_link": "Copiați legătura de solicitare"
},
"response": {
"copy": "Copiați răspunsul în clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Eroare la conectare",
"connection_failed": "Concetare eșuată",
"connection_lost": "Conexiune pierdută",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Copiat în clipboard",
"deleted": "Șters",
"deprecated": "NEMENȚINUT",
@@ -742,10 +836,12 @@
"disconnected": "Deconectat",
"disconnected_from": "Deconectat de la {name}",
"docs_generated": "Documentație generată",
"download_failed": "Download failed",
"download_started": "Descărcarea a început",
"enabled": "Activat",
"file_imported": "Fișier importat",
"finished_in": "Finalizat în {duration} ms",
"hide": "Hide",
"history_deleted": "Istoricul a fost șters",
"linewrap": "Înfășurați liniile",
"loading": "Se încarcă...",
@@ -756,6 +852,7 @@
"published_error": "Ceva a mers greșit la publicarea mesajului: {message} la topicul: {topic}",
"published_message": "Mesaj publicat: {message} la topicul: {topic}",
"reconnection_error": "Reconectare eșuată",
"show": "Show",
"subscribed_failed": "Abonare eșuată la topicul: {topic}",
"subscribed_success": "Abonare reușită la topicul: {topic}",
"unsubscribed_failed": "Dezabonare eșuată la topicul: {topic}",
@@ -791,6 +888,7 @@
"queries": "Întrebări",
"query": "Interogare",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Teste",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email-ul nu se potrivește cu detaliile contului dumneavoastră. Contactați proprietarul echipei.",
"exit": "Ieșiți din echipă",
"exit_disabled": "Numai proprietarul nu poate ieși din echipă",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Formatul de e-mail nu este valid",
"invalid_id": "ID-ul echipei nu este valid. Contactați proprietarul echipei.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Echipă salvată",
"select_a_team": "Selectați o echipă",
"success_invites": "Success invites",
"title": "Echipe",
"we_sent_invite_link": "Am trimis un link de invitație către toți invitații!",
"we_sent_invite_link_description": "Rugați toate persoanele invitate să iși verifice căsuța. Click pe link pentru a se alătura echipei."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Acțiuni",
"created_on": "Creat la",
"deleted": "Cod scurt șters",
"method": "Metodă",
"not_found": "Codul scurt nu a fost găsit",
"short_code": "Cod scurt",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Автоскрол",
"cancel": "Отменить",
"choose_file": "Выберите файл",
@@ -10,6 +11,7 @@
"connect": "Подключиться",
"connecting": "Соединение...",
"copy": "Скопировать",
"create": "Create",
"delete": "Удалить",
"disconnect": "Отключиться",
"dismiss": "Скрыть",
@@ -31,6 +33,7 @@
"open_workspace": "Открыть пространство",
"paste": "Вставить",
"prettify": "Форматировать",
"properties": "Properties",
"remove": "Удалить",
"rename": "Переименовать",
"restore": "Восстановить",
@@ -39,6 +42,7 @@
"scroll_to_top": "Вверх",
"search": "Поиск",
"send": "Отправить",
"share": "Share",
"start": "Начать",
"starting": "Запускаю",
"stop": "Стоп",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Связаться с нами",
"contact_us": "Свяжитесь с нами",
"cookies": "Cookies",
"copy": "Копировать",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Копировать токен пользователя",
"developer_option": "Настройки разработчика",
"developer_option_description": "Инструмент разработчика помогает обслуживить и развивить Hoppscotch",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Горячие клавиши",
"name": "Hoppscotch",
"new_version_found": "Найдена новая версия. Перезагрузите для обновления.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Настройки",
"proxy_privacy_policy": "Политика конфиденциальности прокси",
"reload": "Перезагрузить",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Сгенерировать токен",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Добавить в URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Узнать больше",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Пароль",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Токен",
"type": "Метод авторизации",
"username": "Имя пользователя"
@@ -124,6 +148,7 @@
"created": "Коллекция создана",
"different_parent": "Нельзя сортировать коллекцию с разной родительской коллекцией",
"edit": "Редактировать коллекцию",
"import_or_create": "Import or create a collection",
"invalid_name": "Укажите допустимое название коллекции",
"invalid_root_move": "Коллекция уже в корне",
"moved": "Перемещено успешно",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Имя коллекции должно иметь 3 или более символов",
"new": "Создать коллекцию",
"order_changed": "Порядок коллекции обновлён",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Коллекция переименована",
"request_in_use": "Запрос обрабатывается",
"save_as": "Сохранить как",
@@ -151,6 +178,7 @@
"remove_folder": "Вы уверены, что хотите навсегда удалить эту папку?",
"remove_history": "Вы уверены, что хотите навсегда удалить всю историю?",
"remove_request": "Вы уверены, что хотите навсегда удалить этот запрос?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Вы уверены, что хотите удалить эту команду?",
"remove_telemetry": "Вы действительно хотите отказаться от телеметрии?",
"request_change": "Вы уверены что хотите сбросить текущий запрос, все не сохранённые данные будт утеряны?",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Заголовок {count}",
"message": "Тело {count}",
@@ -192,11 +238,13 @@
"profile": "Войдите, чтобы просмотреть свой профиль",
"protocols": "Протоколы пустые",
"schema": "Подключиться к конечной точке GraphQL",
"shortcodes": "Нет коротких ссылок",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Нет подписок",
"team_name": "Название команды пусто",
"teams": "Команды пустые",
"tests": "Для этого запроса нет тестов"
"tests": "Для этого запроса нет тестов",
"shortcodes": "Нет коротких ссылок"
},
"environment": {
"add_to_global": "Добавить в глобальное окружение",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Укажите допустимое имя для окружения",
"list": "Environment variables",
"my_environments": "Мои окружения",
@@ -232,8 +281,10 @@
"variable_list": "Список переменных"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Похоже, в этом браузере нет поддержки событий, отправленных сервером.",
"check_console_details": "Подробности смотрите в журнале консоли.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL неправильно отформатирован",
"danger_zone": "Опасная зона",
"delete_account": "Вы являетесь владельцем этой команды:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Не удалось определить недопустимое тело, устранить синтаксические ошибки json и повторить попытку.",
"network_error": "Похоже, возникла проблема с соединением. Попробуйте еще раз.",
"network_fail": "Не удалось отправить запрос",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Без продолжительности",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Совпадения не найдены",
"page_not_found": "Эта страница не найдена",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Не удалось выполнить сценарий предварительного запроса",
"something_went_wrong": "Что-то пошло не так",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Экспорт как JSON",
"create_secret_gist": "Создать секретный Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist создан",
"require_github": "Войдите через GitHub, чтобы создать секретную суть",
"title": "Экспорт"
@@ -286,6 +341,9 @@
"subscriptions": "Подписки",
"switch_connection": "Изменить соединение"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Время",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Заголовок авторизации будет автоматически сгенерирован при отправке запроса.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Сначала создайте документацию",
"network_fail": "Невозможно достичь конечной точки API. Проверьте подключение к сети и попробуйте еще раз.",
"offline": "Кажется, вы не в сети. Данные в этой рабочей области могут быть устаревшими.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Импортировать коллекции",
"curl": "Импортировать cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Ошибка импорта",
"from_file": "Import from File",
"from_gist": "Импорт из Gist",
"from_gist_description": "Импортировать через Gist URL",
"from_insomnia": "Импортировать с Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Импортировать из коллекции Postman",
"from_url": "Импортировать из URL",
"gist_url": "Введите URL-адрес Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Не удалить получить данные по этому URL",
"import_from_url_invalid_file_format": "Ошибка при импорте коллекций",
"import_from_url_invalid_type": "Неподдерживаемый тип. Поддерживаемые типы: 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Коллекция импортирована",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Импортировать из коллекции Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Импортировать"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "У вас есть не сохранённые изменения",
"collections": "Коллекции",
"confirm": "Подтверждать",
"customize_request": "Customize Request",
"edit_request": "Изменить запрос",
"import_export": "Импорт Экспорт"
"import_export": "Импорт Экспорт",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Вы уже подписаны на этот топик",
@@ -449,13 +520,14 @@
"structured": "Структурированный",
"text": "Текст"
},
"copy_link": "Копировать ссылку",
"different_collection": "Нельзя изменять порядок запросов из разных коллекций",
"duplicated": "Запрос скопирован",
"duration": "Продолжительность",
"enter_curl": "Введите cURL",
"generate_code": "Сгенерировать код",
"generated_code": "Сгенерированный код",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Список заголовков",
"invalid_name": "Укажите имя для запроса",
"method": "Методика",
@@ -480,12 +552,14 @@
"saved": "Запрос сохранен",
"share": "Делиться",
"share_description": "Поделиться Hoppscotch с друзьями",
"share_request": "Share Request",
"stop": "Stop",
"title": "Запрос",
"type": "Тип запроса",
"url": "URL",
"variables": "Переменные",
"view_my_links": "Посмотреть мои ссылки"
"view_my_links": "Посмотреть мои ссылки",
"copy_link": "Копировать ссылку"
},
"response": {
"audio": "Аудио",
@@ -513,6 +587,7 @@
"account_description": "Настройте параметры своей учетной записи.",
"account_email_description": "Ваш основной адрес электронной почты.",
"account_name_description": "Это ваше отображаемое имя.",
"additional": "Additional Settings",
"background": "Задний фон",
"black_mode": "Темная тема",
"choose_language": "Выберите язык",
@@ -559,14 +634,31 @@
"verified_email": "Проверенный Email",
"verify_email": "Подтвердить Email"
},
"shortcodes": {
"actions": "Действия",
"created_on": "Создано",
"deleted": "Удалёна",
"method": "Метод",
"not_found": "Короткая ссылка не найдена",
"short_code": "Короткая ссылка",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Копировать ссылку на запрос",
"delete_method": "Выберите метод DELETE",
"get_method": "Выберите метод GET",
"head_method": "Выберите метод HEAD",
@@ -611,8 +702,10 @@
"save_request": "Сохарнить запрос",
"save_to_collections": "Сохранить в коллекции",
"send_request": "Послать запрос",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Запрос"
"title": "Запрос",
"copy_request_link": "Копировать ссылку на запрос"
},
"response": {
"copy": "Копировать запрос в буфер обмена",
@@ -735,6 +828,7 @@
"connection_error": "Ошибка подключения",
"connection_failed": "Не удалось установить соединение",
"connection_lost": "Соединение утеряно",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Скопировано в буфер обмена",
"deleted": "Удалено",
"deprecated": "УСТАРЕЛО",
@@ -742,10 +836,12 @@
"disconnected": "Отключен",
"disconnected_from": "Отключено от {name}",
"docs_generated": "Документация создана",
"download_failed": "Download failed",
"download_started": "Скачивание началось",
"enabled": "Включено",
"file_imported": "Файл импортирован",
"finished_in": "Завершено через {duration} мс",
"hide": "Hide",
"history_deleted": "История удалена",
"linewrap": "Обернуть линии",
"loading": "Загрузка...",
@@ -756,6 +852,7 @@
"published_error": "Что-то пошло не так при попытке опубликовать сообщение в топик {topic}: {message}",
"published_message": "Опубликовано сообщение: {message} в топик: {topic}",
"reconnection_error": "Не удалось переподключиться",
"show": "Show",
"subscribed_failed": "Не удалось подписаться на топик: {topic}",
"subscribed_success": "Успешно подписался на топик: {topic}",
"unsubscribed_failed": "Не удалось отписаться от топика: {topic}",
@@ -791,6 +888,7 @@
"queries": "Запросы",
"query": "Запрос",
"schema": "Схема",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Тесты",
@@ -807,6 +905,7 @@
"email_do_not_match": "Электронная почта, которой Вы воспользовались не соответсвует указанной в данных Вашей учетной записи.",
"exit": "Выйти из команды",
"exit_disabled": "Только владелец не может выйти из команды",
"failed_invites": "Failed invites",
"invalid_coll_id": "Не верный идентификатор коллекции",
"invalid_email_format": "Формат электронной почты недействителен",
"invalid_id": "Некорректный ID команды. Свяжитесь с руководителем команды.",
@@ -848,6 +947,7 @@
"same_target_destination": "Таже цель и конечная точка",
"saved": "Команда сохранена",
"select_a_team": "Выбрать команду",
"success_invites": "Success invites",
"title": "Команды",
"we_sent_invite_link": "Мы отправили все приглашения!",
"we_sent_invite_link_description": "Попросите тех, кого Вы пригласили, проверить их почтовые ящики. Им нужно перейди по ссылке, чтобы подтвердить вступление в эту команду."
@@ -879,5 +979,14 @@
"personal": "Моё пространство",
"team": "Пространство команды",
"title": "Рабочие пространства"
},
"shortcodes": {
"actions": "Действия",
"created_on": "Создано",
"deleted": "Удалёна",
"method": "Метод",
"not_found": "Короткая ссылка не найдена",
"short_code": "Короткая ссылка",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Поништити, отказати",
"choose_file": "Одаберите датотеку",
@@ -10,6 +11,7 @@
"connect": "Цоннецт",
"connecting": "Connecting",
"copy": "Цопи",
"create": "Create",
"delete": "Избриши",
"disconnect": "Прекините везу",
"dismiss": "Одбаци",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Преттифи",
"properties": "Properties",
"remove": "Уклони",
"rename": "Rename",
"restore": "Ресторе",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Претрага",
"send": "Пошаљи",
"share": "Share",
"start": "Почетак",
"starting": "Starting",
"stop": "Зауставити",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Разговарајте са нама",
"contact_us": "Контактирајте нас",
"cookies": "Cookies",
"copy": "Цопи",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Пречице на тастатури",
"name": "Хоппсцотцх",
"new_version_found": "Нова верзија је пронађена. Освежите да бисте ажурирали.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Политика приватности посредника",
"reload": "Освежи",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Генериши токен",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Укључи у УРЛ",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Научите како",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Лозинка",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Токен",
"type": "Врста овлашћења",
"username": "Корисничко име"
@@ -124,6 +148,7 @@
"created": "Колекција је направљена",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Измени збирку",
"import_or_create": "Import or create a collection",
"invalid_name": "Наведите важећи назив збирке",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Нова колекција",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Збирка је преименована",
"request_in_use": "Request in use",
"save_as": "Сачувај као",
@@ -151,6 +178,7 @@
"remove_folder": "Јесте ли сигурни да желите трајно да избришете ову фасциклу?",
"remove_history": "Јесте ли сигурни да желите трајно да избришете сву историју?",
"remove_request": "Јесте ли сигурни да желите трајно да избришете овај захтев?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Јесте ли сигурни да желите да избришете овај тим?",
"remove_telemetry": "Јесте ли сигурни да желите да искључите Телеметрију?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Заглавље {count}",
"message": "Порука {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Протоколи су празни",
"schema": "Повежите се са ГрапхКЛ крајњом тачком",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Назив тима празан",
"teams": "Тимови су празни",
"tests": "Нема тестова за овај захтев"
"tests": "Нема тестова за овај захтев",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Наведите важећи назив за окружење",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Листа променљивих"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Изгледа да овај прегледач нема подршку за Послане догађаје са сервера.",
"check_console_details": "Детаље потражите у дневнику конзоле.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "цУРЛ није правилно форматиран",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Није могуће унапредити неважеће тело, решити грешке у синтакси јсон -а и покушати поново",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Слање захтева није успело",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Нема трајања",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Није могуће извршити скрипту пре захтева",
"something_went_wrong": "Нешто није у реду",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Извези као ЈСОН",
"create_secret_gist": "Направите тајну суштину",
"failed": "Something went wrong while exporting",
"gist_created": "Суштина створена",
"require_github": "Пријавите се са ГитХуб -ом да бисте креирали тајну суштину",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Претплате",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Заглавље ауторизације ће се аутоматски генерисати када пошаљете захтев.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Прво направите документацију",
"network_fail": "Није могуће доћи до крајње тачке АПИ -ја. Проверите мрежну везу и покушајте поново.",
"offline": "Изгледа да сте ван мреже. Подаци у овом радном простору можда нису ажурирани.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Увоз збирки",
"curl": "Увези цУРЛ",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Увоз није успео",
"from_file": "Import from File",
"from_gist": "Увоз из Гиста",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Унесите Гист УРЛ",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Увоз"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Збирке",
"confirm": "Потврди",
"customize_request": "Customize Request",
"edit_request": "Измените захтев",
"import_export": "Увоз извоз"
"import_export": "Увоз извоз",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Копирај везу",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Трајање",
"enter_curl": "Унесите цУРЛ",
"generate_code": "Генериши код",
"generated_code": "Генерисани код",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Листа заглавља",
"invalid_name": "Наведите назив захтева",
"method": "Метод",
@@ -480,12 +552,14 @@
"saved": "Захтев је сачуван",
"share": "Објави",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Захтев",
"type": "Врста Захтева",
"url": "УРЛ",
"variables": "Променљиве",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Копирај везу"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Прилагодите поставке налога.",
"account_email_description": "Ваша примарна адреса е -поште.",
"account_name_description": "Ово је ваше име за приказ.",
"additional": "Additional Settings",
"background": "Позадина",
"black_mode": "Црн",
"choose_language": "Изабери језик",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Копирајте везу захтева",
"delete_method": "Изаберите ДЕЛЕТЕ метход",
"get_method": "Изаберите метод ГЕТ",
"head_method": "Изаберите метод ХЕАД",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Сачувај у збирке",
"send_request": "Пошаљите упит",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Захтев"
"title": "Захтев",
"copy_request_link": "Копирајте везу захтева"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Копирано у међуспремник",
"deleted": "Избрисан",
"deprecated": "ЗАСТАРЕЛА",
@@ -742,10 +836,12 @@
"disconnected": "Прекинуто",
"disconnected_from": "Прекинута је веза са именом {наме}",
"docs_generated": "Генерисана документација",
"download_failed": "Download failed",
"download_started": "Преузимање је започело",
"enabled": "Омогућено",
"file_imported": "Датотека је увезена",
"finished_in": "Завршено за {duration} мс",
"hide": "Hide",
"history_deleted": "Историја је избрисана",
"linewrap": "Омотајте линије",
"loading": "Учитавање ...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Упити",
"query": "Упит",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Соцкет.ИО",
"sse": "ССЕ",
"tests": "Тестови",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Екит Теам",
"exit_disabled": "Само власник не може изаћи из тима",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Формат е -поште је неважећи",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Тим је сачуван",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Тимови",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "Annullera",
"choose_file": "Välj en fil",
@@ -10,6 +11,7 @@
"connect": "Ansluta",
"connecting": "Connecting",
"copy": "Kopiera",
"create": "Create",
"delete": "Radera",
"disconnect": "Koppla ifrån",
"dismiss": "Avfärda",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Försköna",
"properties": "Properties",
"remove": "Avlägsna",
"rename": "Rename",
"restore": "Återställ",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Sök",
"send": "Skicka",
"share": "Share",
"start": "Start",
"starting": "Starting",
"stop": "Sluta",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "chatta med oss",
"contact_us": "Kontakta oss",
"cookies": "Cookies",
"copy": "Kopiera",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Tangentbordsgenvägar",
"name": "Hoppscotch",
"new_version_found": "Ny version hittades. Uppdatera för att uppdatera.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Sekretesspolicy för proxy",
"reload": "Ladda om",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Generera Token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Inkludera i URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Lära sig hur",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Pass by",
"password": "Lösenord",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Tecken",
"type": "Godkännande typ",
"username": "Användarnamn"
@@ -124,6 +148,7 @@
"created": "Samlingen skapad",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Redigera samling",
"import_or_create": "Import or create a collection",
"invalid_name": "Ange ett giltigt namn för samlingen",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Collection name should be at least 3 characters long",
"new": "Ny kollektion",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Samling bytt namn",
"request_in_use": "Request in use",
"save_as": "Spara som",
@@ -151,6 +178,7 @@
"remove_folder": "Är du säker på att du vill ta bort den här mappen permanent?",
"remove_history": "Är du säker på att du vill radera all historik permanent?",
"remove_request": "Är du säker på att du vill radera denna begäran permanent?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Är du säker på att du vill ta bort det här laget?",
"remove_telemetry": "Är du säker på att du vill välja bort telemetri?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Rubrik {count}",
"message": "Meddelande {count}",
@@ -192,11 +238,13 @@
"profile": "Login to view your profile",
"protocols": "Protokoll är tomma",
"schema": "Anslut till en GraphQL -slutpunkt",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Lagets namn är tomt",
"teams": "Lag är tomma",
"tests": "Det finns inga tester för denna begäran"
"tests": "Det finns inga tester för denna begäran",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Add to Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Ange ett giltigt namn på miljön",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Variabel lista"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Den här webbläsaren verkar inte ha stöd för Server Sent Events.",
"check_console_details": "Kontrollera konsolloggen för mer information.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL är inte korrekt formaterad",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Det gick inte att pryda en ogiltig kropp, lösa json -syntaxfel och försök igen",
"network_error": "There seems to be a network error. Please try again.",
"network_fail": "Det gick inte att skicka förfrågan",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Ingen varaktighet",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Det gick inte att köra skriptet för förhandsbegäran",
"something_went_wrong": "Något gick fel",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Exportera som JSON",
"create_secret_gist": "Skapa hemlig Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist skapad",
"require_github": "Logga in med GitHub för att skapa hemlig information",
"title": "Export"
@@ -286,6 +341,9 @@
"subscriptions": "Prenumerationer",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Auktoriseringsrubriken genereras automatiskt när du skickar begäran.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Skapa dokumentation först",
"network_fail": "Det gick inte att nå API -slutpunkten. Kontrollera din nätverksanslutning och försök igen.",
"offline": "Du verkar vara offline. Data i denna arbetsyta är kanske inte uppdaterad.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Importera samlingar",
"curl": "Importera cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Importen misslyckades",
"from_file": "Import from File",
"from_gist": "Importera från Gist",
"from_gist_description": "Import from Gist URL",
"from_insomnia": "Import from Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Import from Postman collection",
"from_url": "Import from URL",
"gist_url": "Ange Gist URL",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Importera"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Samlingar",
"confirm": "Bekräfta",
"customize_request": "Customize Request",
"edit_request": "Redigera begäran",
"import_export": "Import Export"
"import_export": "Import Export",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Kopiera länk",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Varaktighet",
"enter_curl": "Ange cURL",
"generate_code": "Generera kod",
"generated_code": "Genererad kod",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Rubriklista",
"invalid_name": "Ange ett namn på begäran",
"method": "Metod",
@@ -480,12 +552,14 @@
"saved": "Begäran sparad",
"share": "Dela med sig",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "Begäran",
"type": "Typ av förfrågan",
"url": "URL",
"variables": "Variabler",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Kopiera länk"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Anpassa dina kontoinställningar.",
"account_email_description": "Din primära e -postadress.",
"account_name_description": "Detta är ditt visningsnamn.",
"additional": "Additional Settings",
"background": "Bakgrund",
"black_mode": "Svart",
"choose_language": "Välj språk",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "Verify email"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Kopiera begäran länk",
"delete_method": "Välj DELETE method",
"get_method": "Välj GET -metod",
"head_method": "Välj HEAD -metod",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Spara i samlingar",
"send_request": "Skicka förfrågan",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Begäran"
"title": "Begäran",
"copy_request_link": "Kopiera begäran länk"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Kopierat till urklipp",
"deleted": "raderade",
"deprecated": "DEPRECATED",
@@ -742,10 +836,12 @@
"disconnected": "Osammanhängande",
"disconnected_from": "Kopplad från {name}",
"docs_generated": "Dokumentation genererad",
"download_failed": "Download failed",
"download_started": "Nedladdningen startade",
"enabled": "Aktiverad",
"file_imported": "Filen har importerats",
"finished_in": "Avslutad på {duration} ms",
"hide": "Hide",
"history_deleted": "Historik raderad",
"linewrap": "Slå in linjer",
"loading": "Läser in...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Frågor",
"query": "Fråga",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Tester",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email doesn't match with your account details. Contact your team owner.",
"exit": "Avsluta Team",
"exit_disabled": "Endast ägaren kan inte lämna laget",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E -postformatet är ogiltigt",
"invalid_id": "Invalid team ID. Contact your team owner.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Lag räddade",
"select_a_team": "Select a team",
"success_invites": "Success invites",
"title": "Lag",
"we_sent_invite_link": "We sent an invite link to all invitees!",
"we_sent_invite_link_description": "Ask all invitees to check their inbox. Click on the link to join the team."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Autoscroll",
"cancel": "İptal",
"choose_file": "Bir dosya seçin",
@@ -10,6 +11,7 @@
"connect": "Bağlan",
"connecting": "Connecting",
"copy": "Kopyala",
"create": "Create",
"delete": "Sil",
"disconnect": "Bağlantıyı kes",
"dismiss": "Boşver",
@@ -31,6 +33,7 @@
"open_workspace": "Open workspace",
"paste": "Paste",
"prettify": "Güzelleştir",
"properties": "Properties",
"remove": "Kaldır",
"rename": "Rename",
"restore": "Onar",
@@ -39,6 +42,7 @@
"scroll_to_top": "Scroll to top",
"search": "Arama",
"send": "Gönder",
"share": "Share",
"start": "Başla",
"starting": "Starting",
"stop": "Dur",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "bizimle sohbet et",
"contact_us": "Bize ulaş",
"cookies": "Cookies",
"copy": "Kopyala",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Copy User Auth Token",
"developer_option": "Developer options",
"developer_option_description": "Developer tools which helps in development and maintenance of Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Klavye kısayolları",
"name": "seksek",
"new_version_found": "Yeni sürüm bulundu. Güncellemek için yenileyin.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Options",
"proxy_privacy_policy": "Proxy gizlilik ilkesi",
"reload": "Tekrar yükle",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Jeton oluştur",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "URL'ye dahil et",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Nasıl öğrenilir",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Şunla anahtar ekleyin",
"password": "Parola",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Jeton",
"type": "Yetki türü",
"username": "Kullanıcı adı"
@@ -124,6 +148,7 @@
"created": "Koleksiyon oluşturuldu",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Koleksiyonu düzenle",
"import_or_create": "Import or create a collection",
"invalid_name": "Lütfen koleksiyon için geçerli bir ad girin",
"invalid_root_move": "Collection already in the root",
"moved": "Başarıyla taşındı",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Koleksiyon adı en az 3 karakter uzunluğunda olmalıdır",
"new": "Yeni koleksiyon",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Koleksiyon yeniden adlandırıldı",
"request_in_use": "Kullanımda istek",
"save_as": "Farklı kaydet",
@@ -151,6 +178,7 @@
"remove_folder": "Bu klasörü kalıcı olarak silmek istediğinizden emin misiniz?",
"remove_history": "Tüm geçmişi kalıcı olarak silmek istediğinizden emin misiniz?",
"remove_request": "Bu isteği kalıcı olarak silmek istediğinizden emin misiniz?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Bu takımı silmek istediğinizden emin misiniz?",
"remove_telemetry": "Telemetriden çıkmak istediğinizden emin misiniz?",
"request_change": "Are you sure you want to discard current request, unsaved changes will be lost.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Başlık {count}",
"message": "Mesaj {count}",
@@ -192,11 +238,13 @@
"profile": "Bu profili görüntülemek için giriş yapın",
"protocols": "Protokoller boş",
"schema": "Bir GraphQL uç noktasına bağlanma",
"shortcodes": "Shortcodes are empty",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Subscriptions are empty",
"team_name": "Takım adı boş",
"teams": "Takımlar boş",
"tests": "Bu istek için test yok"
"tests": "Bu istek için test yok",
"shortcodes": "Shortcodes are empty"
},
"environment": {
"add_to_global": "Globale ekle",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Lütfen ortam için geçerli bir ad girin",
"list": "Environment variables",
"my_environments": "My Environments",
@@ -232,8 +281,10 @@
"variable_list": "Değişken listesi"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Bu tarayıcıda SSE desteği yok gibi görünüyor.",
"check_console_details": "Ayrıntılar için konsol günlüğünü kontrol edin.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL düzgün biçimlendirilmemiş",
"danger_zone": "Danger zone",
"delete_account": "Your account is currently an owner in these teams:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Geçersiz bir gövde güzelleştirilemedi, JSON sözdizimi hatalarını çözüp tekrar deneyin",
"network_error": "Görünene göre bir ağ hatası var. Lütfen tekrar deneyin.",
"network_fail": "İstek gönderilemedi",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Süre yok",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "No matches found",
"page_not_found": "This page could not be found",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Ön istek komut dosyası çalıştırılamadı",
"something_went_wrong": "Bir şeyler yanlış gitti",
@@ -260,6 +314,7 @@
"export": {
"as_json": "JSON olarak dışa aktar",
"create_secret_gist": "Gizli Gist oluştur",
"failed": "Something went wrong while exporting",
"gist_created": "Gist oluşturuldu",
"require_github": "Gizli Gist oluşturmak için GitHub ile giriş yapın",
"title": "Dışarı Aktar"
@@ -286,6 +341,9 @@
"subscriptions": "Abonelikler",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Time",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Yetkilendirme başlığı, isteği gönderdiğinizde otomatik olarak oluşturulur.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Önce belgeleri oluşturun",
"network_fail": "API uç noktasına ulaşılamıyor. Ağ bağlantınızı kontrol edin ve tekrar deneyin.",
"offline": "Çevrimdışı görünüyorsun. Bu çalışma alanındaki veriler güncel olmayabilir.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Koleksiyonları içe aktar",
"curl": "cURL'yi içe aktar",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "İçe aktarılamadı",
"from_file": "Import from File",
"from_gist": "Gist'ten içe aktar",
"from_gist_description": "Gist ile içe aktar",
"from_insomnia": "Insomnia ile içe aktar",
@@ -331,11 +394,17 @@
"from_postman_description": "Postman koleksiyonunu içe aktar",
"from_url": "Bağlantı'yı içe aktar",
"gist_url": "Gist bağlantısını girin",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Couldn't get data from the url",
"import_from_url_invalid_file_format": "Error while importing collections",
"import_from_url_invalid_type": "Unsupported type. accepted values are 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Collections Imported",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Import collections from a Hoppscotch Collections JSON file",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "İçe aktar"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Koleksiyonlar",
"confirm": "Onayla",
"customize_request": "Customize Request",
"edit_request": "İsteği düzenle",
"import_export": "Yükleme/Dışa aktarma"
"import_export": "Yükleme/Dışa aktarma",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "You are already subscribed to this topic.",
@@ -449,13 +520,14 @@
"structured": "Structured",
"text": "Text"
},
"copy_link": "Bağlantıyı kopyala",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Süre",
"enter_curl": "cURL'yi girin",
"generate_code": "Kodunu oluşturun",
"generated_code": "Oluşturulan kod",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Başlık Listesi",
"invalid_name": "Lütfen istek için bir ad girin",
"method": "Yöntem",
@@ -480,12 +552,14 @@
"saved": "İstek kaydedildi",
"share": "Paylaş",
"share_description": "Share Hoppscotch with your friends",
"share_request": "Share Request",
"stop": "Stop",
"title": "İstek",
"type": "İstek türü",
"url": "URL",
"variables": "Değişkenler",
"view_my_links": "View my links"
"view_my_links": "View my links",
"copy_link": "Bağlantıyı kopyala"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Hesap ayarlarınızı özelleştirin.",
"account_email_description": "Birincil e-posta adresiniz.",
"account_name_description": "Bu sizin görünen adınız.",
"additional": "Additional Settings",
"background": "Arka fon",
"black_mode": "Siyah",
"choose_language": "Dil seçiniz",
@@ -559,14 +634,31 @@
"verified_email": "Verified email",
"verify_email": "E-posta'yı doğrula"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "İstek bağlantısını kopyala",
"delete_method": "DELETE yöntemini seçin",
"get_method": "GET yöntemini seçin",
"head_method": "HEAD yöntemini seçin",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Koleksiyonlara kaydet",
"send_request": "İstek gönder",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "İstek"
"title": "İstek",
"copy_request_link": "İstek bağlantısını kopyala"
},
"response": {
"copy": "Copy response to clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Failed to connect",
"connection_failed": "Connection failed",
"connection_lost": "Connection lost",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Panoya kopyalandı",
"deleted": "Silindi",
"deprecated": "KULLANIMDAN KALDIRILMIŞ",
@@ -742,10 +836,12 @@
"disconnected": "Bağlantı kesildi",
"disconnected_from": "{name} ile bağlantı kesildi",
"docs_generated": "Dokümantasyon oluşturuldu",
"download_failed": "Download failed",
"download_started": "İndirme başladı",
"enabled": "Etkinleştirildi",
"file_imported": "Dosya içe aktarıldı",
"finished_in": "{duration} ms içinde tamamlandı",
"hide": "Hide",
"history_deleted": "Geçmiş silindi",
"linewrap": "Çizgileri sarın",
"loading": "Yükleniyor...",
@@ -756,6 +852,7 @@
"published_error": "Something went wrong while publishing msg: {topic} to topic: {message}",
"published_message": "Published message: {message} to topic: {topic}",
"reconnection_error": "Failed to reconnect",
"show": "Show",
"subscribed_failed": "Failed to subscribe to topic: {topic}",
"subscribed_success": "Successfully subscribed to topic: {topic}",
"unsubscribed_failed": "Failed to unsubscribe from topic: {topic}",
@@ -791,6 +888,7 @@
"queries": "Sorgular",
"query": "Sorgu",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Testler",
@@ -807,6 +905,7 @@
"email_do_not_match": "E-posta, hesap ayrıntılarınızla eşleşmiyor. Takım sahibinizle iletişime geçin.",
"exit": "Takımdan Çık",
"exit_disabled": "Takımın kurucusu çıkamaz.",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "E-posta biçimi geçersiz",
"invalid_id": "Geçersiz ekip kimliği. Takım sahibinizle iletişime geçin.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Takım kaydedildi",
"select_a_team": "Takım seç",
"success_invites": "Success invites",
"title": "Başlık",
"we_sent_invite_link": "Tüm davetlilere bir davet bağlantısı gönderdik!",
"we_sent_invite_link_description": "Tüm davetlilerden gelen kutularını kontrol etmelerini isteyin. Ekibe katılmak için bağlantıya tıklayın."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Actions",
"created_on": "Created on",
"deleted": "Shortcode deleted",
"method": "Method",
"not_found": "Shortcode not found",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "自動捲動",
"cancel": "取消",
"choose_file": "選擇一個檔案",
@@ -10,6 +11,7 @@
"connect": "連線",
"connecting": "正在連接",
"copy": "複製",
"create": "Create",
"delete": "刪除",
"disconnect": "斷開連線",
"dismiss": "忽略",
@@ -31,6 +33,7 @@
"open_workspace": "開啟工作區",
"paste": "貼上",
"prettify": "美化",
"properties": "Properties",
"remove": "移除",
"rename": "Rename",
"restore": "還原",
@@ -39,6 +42,7 @@
"scroll_to_top": "捲動至頂部",
"search": "搜尋",
"send": "傳送",
"share": "Share",
"start": "開始",
"starting": "正在開始",
"stop": "停止",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "與我們交談",
"contact_us": "聯絡我們",
"cookies": "Cookies",
"copy": "複製",
"copy_interface_type": "Copy interface type",
"copy_user_id": "複製使用者驗證權杖",
"developer_option": "開發者選項",
"developer_option_description": "協助開發和維護 Hoppscotch 的工具。",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "鍵盤快捷鍵",
"name": "Hoppscotch",
"new_version_found": "已發現新版本。重新整理頁面以更新。",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "選項",
"proxy_privacy_policy": "Proxy 隱私政策",
"reload": "重新載入",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "產生權杖",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "包含在網址",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "瞭解更多",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "傳遞方式",
"password": "密碼",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "權杖",
"type": "授權類型",
"username": "使用者名稱"
@@ -124,6 +148,7 @@
"created": "集合已建立",
"different_parent": "無法為父集合不同的集合重新排序",
"edit": "編輯集合",
"import_or_create": "Import or create a collection",
"invalid_name": "請提供有效的集合名稱",
"invalid_root_move": "集合已在根目錄",
"moved": "移動成功",
@@ -132,6 +157,8 @@
"name_length_insufficient": "集合名稱至少要有 3 個字元。",
"new": "建立集合",
"order_changed": "集合順序已更新",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "集合已重新命名",
"request_in_use": "請求正在使用中",
"save_as": "另存為",
@@ -151,6 +178,7 @@
"remove_folder": "您確定要永久刪除該資料夾嗎?",
"remove_history": "您確定要永久刪除全部歷史記錄嗎?",
"remove_request": "您確定要永久刪除該請求嗎?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "您確定要刪除該團隊嗎?",
"remove_telemetry": "您確定要退出遙測服務嗎?",
"request_change": "您確定要捨棄目前的請求嗎?未儲存的變更將遺失。",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "在新分頁開啟請求",
"set_environment_variable": "設為變數"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "請求標頭 {count}",
"message": "訊息 {count}",
@@ -192,11 +238,13 @@
"profile": "登入以檢視您的設定檔",
"protocols": "協定為空",
"schema": "連線至 GraphQL 端點",
"shortcodes": "Shortcodes 為空",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "訂閱為空",
"team_name": "團隊名稱為空",
"teams": "團隊為空",
"tests": "沒有針對該請求的測試"
"tests": "沒有針對該請求的測試",
"shortcodes": "Shortcodes 為空"
},
"environment": {
"add_to_global": "新增至全域",
@@ -209,6 +257,7 @@
"empty_variables": "無變數",
"global": "全域",
"global_variables": "全域變數",
"import_or_create": "Import or create a environment",
"invalid_name": "請提供有效的環境名稱",
"list": "環境變數",
"my_environments": "我的環境",
@@ -232,8 +281,10 @@
"variable_list": "變數列表"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "此瀏覽器似乎不支援 SSE。",
"check_console_details": "檢查控制台日誌以獲悉詳情",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL 格式不正確",
"danger_zone": "危險地帶",
"delete_account": "您的帳號目前為這些團隊的擁有者:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "無法美化無效的請求主體,處理 JSON 語法錯誤並重試",
"network_error": "似乎有網路錯誤。請再試一次。",
"network_fail": "無法傳送請求",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "無持續時間",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "找不到結果",
"page_not_found": "找不到此頁面",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy 錯誤",
"script_fail": "無法執行預請求指令碼",
"something_went_wrong": "發生了一些錯誤",
@@ -260,6 +314,7 @@
"export": {
"as_json": "匯出為 JSON",
"create_secret_gist": "建立私密 Gist",
"failed": "Something went wrong while exporting",
"gist_created": "已建立 Gist",
"require_github": "使用 GitHub 登入以建立私密 Gist",
"title": "匯出"
@@ -286,6 +341,9 @@
"subscriptions": "訂閱",
"switch_connection": "切換連線"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "時間",
"url": "網址"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "授權標頭將會在您傳送請求時自動產生。",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "請先產生文件",
"network_fail": "無法到達 API 端點。請檢查網路連線並重試。",
"offline": "您似乎處於離線狀態,該工作區中的資料可能不是最新。",
@@ -316,7 +376,10 @@
"import": {
"collections": "匯入集合",
"curl": "匯入 cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "匯入失敗",
"from_file": "Import from File",
"from_gist": "從 Gist 匯入",
"from_gist_description": "從 Gist 網址匯入",
"from_insomnia": "從 Insomnia 匯入",
@@ -331,11 +394,17 @@
"from_postman_description": "從 Postman 集合匯入",
"from_url": "從網址匯入",
"gist_url": "輸入 Gist 網址",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "無法從網址取得資料",
"import_from_url_invalid_file_format": "匯入集合時發生錯誤",
"import_from_url_invalid_type": "不支援此類型。可接受的值為 'hoppscotch'、'openapi'、'postman'、'insomnia'",
"import_from_url_success": "已匯入集合",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "從 Hoppscotch 集合 JSON 檔匯入集合",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "匯入"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "您有未儲存的改動",
"collections": "集合",
"confirm": "確認",
"customize_request": "Customize Request",
"edit_request": "編輯請求",
"import_export": "匯入/匯出"
"import_export": "匯入/匯出",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "您已經訂閱了此主題。",
@@ -449,13 +520,14 @@
"structured": "結構",
"text": "文字"
},
"copy_link": "複製連結",
"different_collection": "無法重新排列來自不同集合的請求",
"duplicated": "已複製請求",
"duration": "持續時間",
"enter_curl": "輸入 cURL",
"generate_code": "產生程式碼",
"generated_code": "已產生程式碼",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "請求標頭列表",
"invalid_name": "請提供請求名稱",
"method": "方法",
@@ -480,12 +552,14 @@
"saved": "請求已儲存",
"share": "分享",
"share_description": "與您的朋友分享 Hoppscotch",
"share_request": "Share Request",
"stop": "Stop",
"title": "請求",
"type": "請求類型",
"url": "網址",
"variables": "變數",
"view_my_links": "檢視我的連結"
"view_my_links": "檢視我的連結",
"copy_link": "複製連結"
},
"response": {
"audio": "音訊",
@@ -513,6 +587,7 @@
"account_description": "自訂您的帳號設定。",
"account_email_description": "您的主要電子郵件地址。",
"account_name_description": "這是您的顯示名稱。",
"additional": "Additional Settings",
"background": "背景",
"black_mode": "黑色",
"choose_language": "選擇語言",
@@ -559,14 +634,31 @@
"verified_email": "已確認電子郵件地址",
"verify_email": "確認電子郵件地址"
},
"shortcodes": {
"actions": "操作",
"created_on": "建立於",
"deleted": "已刪除快捷碼",
"method": "方法",
"not_found": "找不到快捷碼",
"short_code": "快捷碼",
"url": "網址"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "其他"
},
"request": {
"copy_request_link": "複製請求連結",
"delete_method": "選擇 DELETE 方法",
"get_method": "選擇 GET 方法",
"head_method": "選擇 HEAD 方法",
@@ -611,8 +702,10 @@
"save_request": "儲存請求",
"save_to_collections": "儲存到集合",
"send_request": "傳送請求",
"share_request": "Share Request",
"show_code": "產生程式碼片段",
"title": "請求"
"title": "請求",
"copy_request_link": "複製請求連結"
},
"response": {
"copy": "複製回應至剪貼簿",
@@ -735,6 +828,7 @@
"connection_error": "連線失敗",
"connection_failed": "連線失敗",
"connection_lost": "失去連線",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "已複製到剪貼簿",
"deleted": "已刪除",
"deprecated": "已棄用",
@@ -742,10 +836,12 @@
"disconnected": "斷開連線",
"disconnected_from": "與 {name} 斷開連線",
"docs_generated": "已產生檔案",
"download_failed": "Download failed",
"download_started": "開始下載",
"enabled": "啟用",
"file_imported": "檔案已匯入",
"finished_in": "在 {duration} 毫秒內完成",
"hide": "Hide",
"history_deleted": "歷史記錄已刪除",
"linewrap": "換行",
"loading": "正在載入……",
@@ -756,6 +852,7 @@
"published_error": "將訊息:{topic} 發布至主題:{message} 時發生錯誤",
"published_message": "已將此訊息:{message} 發布至主題:{topic}",
"reconnection_error": "重新連線失敗",
"show": "Show",
"subscribed_failed": "無法訂閱此主題:{topic}",
"subscribed_success": "成功訂閱此主題:{topic}",
"unsubscribed_failed": "無法取消訂閱此主題:{topic}",
@@ -791,6 +888,7 @@
"queries": "查詢",
"query": "查詢",
"schema": "綱要",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "測試",
@@ -807,6 +905,7 @@
"email_do_not_match": "電子信箱與您的帳號資料不一致。請聯絡您的團隊擁有者。",
"exit": "退出團隊",
"exit_disabled": "團隊擁有者無法退出團隊",
"failed_invites": "Failed invites",
"invalid_coll_id": "集合 ID 無效",
"invalid_email_format": "電子信箱格式無效",
"invalid_id": "團隊 ID 無效。請聯絡您的團隊擁有者。",
@@ -848,6 +947,7 @@
"same_target_destination": "目標和目的地相同",
"saved": "團隊已儲存",
"select_a_team": "選擇團隊",
"success_invites": "Success invites",
"title": "團隊",
"we_sent_invite_link": "我們向所有受邀者傳送了邀請連結!",
"we_sent_invite_link_description": "請所有受邀者檢查他們的收件匣。點擊連結加入團隊。"
@@ -879,5 +979,14 @@
"personal": "我的工作區",
"team": "團隊工作區",
"title": "工作區"
},
"shortcodes": {
"actions": "操作",
"created_on": "建立於",
"deleted": "已刪除快捷碼",
"method": "方法",
"not_found": "找不到快捷碼",
"short_code": "快捷碼",
"url": "網址"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Автопрокручування",
"cancel": "Скасувати",
"choose_file": "Виберіть файл",
@@ -10,6 +11,7 @@
"connect": "Підключитись",
"connecting": "Підключення",
"copy": "Копіювати",
"create": "Create",
"delete": "Видалити",
"disconnect": "Відключитись",
"dismiss": "Відхилити",
@@ -31,6 +33,7 @@
"open_workspace": "Відкрити робочу область",
"paste": "Вставити",
"prettify": "Форматувати",
"properties": "Properties",
"remove": "Видалити",
"rename": "Rename",
"restore": "Відновити",
@@ -39,6 +42,7 @@
"scroll_to_top": "Прокрутити вгору",
"search": "Пошук",
"send": "Надіслати",
"share": "Share",
"start": "Почати",
"starting": "Розпочинається",
"stop": "Зупити",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Написати нам",
"contact_us": "Зв'яжіться з нами",
"cookies": "Cookies",
"copy": "Копіювати",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Скопіювати токен автентифікації користувача",
"developer_option": "Параметри розробника",
"developer_option_description": "Інструменти розробника, що допомагають у розробці та підтримці Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Гарячі клавіши",
"name": "Hoppscotch",
"new_version_found": "Знайдено нову версію. Перезавантажте сторінку, щоб оновити.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Опції",
"proxy_privacy_policy": "Політика конфіденційності проксі",
"reload": "Перезавантажити",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Створіть маркер",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Включити в URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Дізнайтесь, як",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Пропустити",
"password": "Пароль",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Токен",
"type": "Тип авторизації",
"username": "Ім'я користувача"
@@ -124,6 +148,7 @@
"created": "Колекція створена",
"different_parent": "Cannot reorder collection with different parent",
"edit": "Редагувати колекцію",
"import_or_create": "Import or create a collection",
"invalid_name": "Укажіть дійсну назву колекції",
"invalid_root_move": "Collection already in the root",
"moved": "Moved Successfully",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Назва колекції має містити принаймні 3 символи",
"new": "Нова колекція",
"order_changed": "Collection Order Updated",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Колекція перейменована",
"request_in_use": "Запит використовується",
"save_as": "Зберегти як",
@@ -151,6 +178,7 @@
"remove_folder": "Ви впевнені, що хочете назавжди видалити цю папку?",
"remove_history": "Ви впевнені, що хочете назавжди видалити всю історію?",
"remove_request": "Ви впевнені, що хочете назавжди видалити цей запит?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Ви впевнені, що хочете видалити цю команду?",
"remove_telemetry": "Ви впевнені, що хочете відмовитися від телеметрії?",
"request_change": "Ви дійсно бажаєте скасувати поточний запит? Незбережені зміни будуть втрачені.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Заголовок {count}",
"message": "Повідомлення {count}",
@@ -192,11 +238,13 @@
"profile": "Увійдіть для перегляду вашого профілю",
"protocols": "Протоколи порожні",
"schema": "Підключіться до кінцевої точки GraphQL",
"shortcodes": "Короткі коди порожні",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Підписки порожні",
"team_name": "Назва команди порожня",
"teams": "Команди порожні",
"tests": "Для цього запиту немає тестів"
"tests": "Для цього запиту немає тестів",
"shortcodes": "Короткі коди порожні"
},
"environment": {
"add_to_global": "Додати до Глобального середовища",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Укажіть дійсну назву середовища",
"list": "Environment variables",
"my_environments": "Мої середовища",
@@ -232,8 +281,10 @@
"variable_list": "Список змінних"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Схоже, цей браузер не підтримує події, надіслані сервером.",
"check_console_details": "Детальніше перевірте журнал консолі.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL неправильно форматовано",
"danger_zone": "Небезпечна зона",
"delete_account": "Ваш обліковий запис на разі володіє цими командами:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Не вдалося заздалегідь визначити недійсне тіло, вирішити синтаксичні помилки json і повторити спробу",
"network_error": "Здається, виникла мережева помилка. Будь ласка, спробуйте ще раз.",
"network_fail": "Не вдалося надіслати запит",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Без тривалості",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Збігів не знайдено",
"page_not_found": "Ця сторінка не знайдена",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Не вдалося виконати сценарій попереднього запиту",
"something_went_wrong": "Щось пішло не так",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Експортувати як JSON",
"create_secret_gist": "Створити секретний GitHub Gist",
"failed": "Something went wrong while exporting",
"gist_created": "Gist створений",
"require_github": "Увійдіть за допомогою GitHub, щоб створити секретний Gist",
"title": "Експортувати"
@@ -286,6 +341,9 @@
"subscriptions": "Підписки",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Час",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Заголовок авторизації буде автоматично сформований під час надсилання запиту.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Спочатку згенеруйте документацію",
"network_fail": "Не вдається зв'язатися з кінцевою точкою API. Перевірте підключення до мережі та повторіть спробу.",
"offline": "Ви, здається, не в мережі. Дані в цій робочій області можуть бути не актуальними.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Імпортувати колекції",
"curl": "Імпортувати cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Не вдалося імпортувати",
"from_file": "Import from File",
"from_gist": "Імпорт з Gist",
"from_gist_description": "Імпорт з Gist URL",
"from_insomnia": "Імпорт з Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Імпорт із колекції Postman",
"from_url": "Імпорт з URL",
"gist_url": "Введіть URL-адресу Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Не вдалося отримати дані з url",
"import_from_url_invalid_file_format": "Помилка при імпорті колекцій",
"import_from_url_invalid_type": "Непідтримуваний тип. Допустимими значеннями є 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Колекції імпортовано",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Імпортувати колекції з колекцій Hoppscotch JSON файлу",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Імпортувати"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "You have unsaved changes",
"collections": "Колекції",
"confirm": "Підтвердити",
"customize_request": "Customize Request",
"edit_request": "Редагувати запит",
"import_export": "Імпорт-експорт"
"import_export": "Імпорт-експорт",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Ви вже підписані на цю тему.",
@@ -449,13 +520,14 @@
"structured": "Структуровано",
"text": "Текст"
},
"copy_link": "Скопіювати посилання",
"different_collection": "Cannot reorder requests from different collections",
"duplicated": "Request duplicated",
"duration": "Тривалість",
"enter_curl": "Введіть cURL",
"generate_code": "Сформувати код",
"generated_code": "Сформований код",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Список заголовків",
"invalid_name": "Будь ласка, вкажіть назву запиту",
"method": "Метод",
@@ -480,12 +552,14 @@
"saved": "Запит збережено",
"share": "Поділитися",
"share_description": "Поділіться Hoppscotch зі своїми друзями",
"share_request": "Share Request",
"stop": "Stop",
"title": "Запит",
"type": "Тип запиту",
"url": "URL",
"variables": "Змінні",
"view_my_links": "Переглянути мої посилання"
"view_my_links": "Переглянути мої посилання",
"copy_link": "Скопіювати посилання"
},
"response": {
"audio": "Audio",
@@ -513,6 +587,7 @@
"account_description": "Налаштуйте налаштування свого облікового запису.",
"account_email_description": "Ваша основна електронна адреса.",
"account_name_description": "Це ваше відображуване ім'я.",
"additional": "Additional Settings",
"background": "Колір фону",
"black_mode": "Чорний",
"choose_language": "Виберіть мову",
@@ -559,14 +634,31 @@
"verified_email": "Підтверджений email",
"verify_email": "Підтвердити електронну адресу"
},
"shortcodes": {
"actions": "Дії",
"created_on": "Дата створення",
"deleted": "Короткий код видалено",
"method": "Метод",
"not_found": "Короткий код не знайдено",
"short_code": "Короткий код",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Скопіювати посилання на запит",
"delete_method": "Виберіть метод ВИДАЛИТИ",
"get_method": "Виберіть метод GET",
"head_method": "Виберіть метод HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Зберегти в колекції",
"send_request": "Відправляти запит",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Запит"
"title": "Запит",
"copy_request_link": "Скопіювати посилання на запит"
},
"response": {
"copy": "Скопіювати відповідь в буфер обміну",
@@ -735,6 +828,7 @@
"connection_error": "Не вдалося з’єднатися",
"connection_failed": "Помилка зʼєднання",
"connection_lost": "З'єднання втрачено",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Скопійовано в буфер обміну",
"deleted": "Видалено",
"deprecated": "ЗНИЖЕНО",
@@ -742,10 +836,12 @@
"disconnected": "Відключено",
"disconnected_from": "Від'єднано від {name}",
"docs_generated": "Сформована документація",
"download_failed": "Download failed",
"download_started": "Завантаження розпочато",
"enabled": "Увімкнено",
"file_imported": "Файл імпортовано",
"finished_in": "Завершено за {duration} мс",
"hide": "Hide",
"history_deleted": "Історію видалено",
"linewrap": "Лінії загортання",
"loading": "Завантаження ...",
@@ -756,6 +852,7 @@
"published_error": "Щось пішло не так під час публікації повідомлення: {topic} на тему: {message}",
"published_message": "Опубліковане повідомлення: {message} до теми: {topic}",
"reconnection_error": "Не вдалося перепід'єднатися",
"show": "Show",
"subscribed_failed": "Не вдалося підписатися на тему: {topic}",
"subscribed_success": "Успішно підписано на тему: {topic}",
"unsubscribed_failed": "Не вдалося відписатися від теми: {topic}",
@@ -791,6 +888,7 @@
"queries": "Запити",
"query": "Запит",
"schema": "Схема",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Тести",
@@ -807,6 +905,7 @@
"email_do_not_match": "Електронна пошта не відповідає відомостям вашого облікового запису. Зверніться до свого власника команди.",
"exit": "Вийти з команди",
"exit_disabled": "Вийти з команди не може тільки власник",
"failed_invites": "Failed invites",
"invalid_coll_id": "Invalid collection ID",
"invalid_email_format": "Формат електронної пошти недійсний",
"invalid_id": "Недійсний ID команди. Зв'яжіться з власником вашої команди.",
@@ -848,6 +947,7 @@
"same_target_destination": "Same target and destination",
"saved": "Команда збережена",
"select_a_team": "Виберіть команду",
"success_invites": "Success invites",
"title": "Команди",
"we_sent_invite_link": "Ми надіслали запрошення всім запрошеним!",
"we_sent_invite_link_description": "Попросіть всіх запрошених перевірити свої поштові скриньки. Перейдіть за посиланням, щоб приєднатися до команди."
@@ -879,5 +979,14 @@
"personal": "My Workspace",
"team": "Team Workspace",
"title": "Workspaces"
},
"shortcodes": {
"actions": "Дії",
"created_on": "Дата створення",
"deleted": "Короткий код видалено",
"method": "Метод",
"not_found": "Короткий код не знайдено",
"short_code": "Короткий код",
"url": "URL"
}
}

View File

@@ -1,5 +1,6 @@
{
"action": {
"add": "Add",
"autoscroll": "Tự động cuộn",
"cancel": "Hủy",
"choose_file": "Chọn tệp",
@@ -10,6 +11,7 @@
"connect": "Kết nối",
"connecting": "Đang kết nối",
"copy": "Sao chép",
"create": "Create",
"delete": "Xóa",
"disconnect": "Ngắt kết nối",
"dismiss": "Bỏ qua",
@@ -31,6 +33,7 @@
"open_workspace": "Mở không gian làm việc",
"paste": "Dán",
"prettify": "Làm đẹp",
"properties": "Properties",
"remove": "Xóa",
"rename": "Rename",
"restore": "Khôi phục",
@@ -39,6 +42,7 @@
"scroll_to_top": "Cuộn lên đầu",
"search": "Tìm kiếm",
"send": "Gửi",
"share": "Share",
"start": "Bắt đầu",
"starting": "Đang bắt đầu",
"stop": "Dừng",
@@ -57,7 +61,9 @@
"app": {
"chat_with_us": "Trò chuyện với chúng tôi",
"contact_us": "Liên hệ chúng tôi",
"cookies": "Cookies",
"copy": "Sao chép",
"copy_interface_type": "Copy interface type",
"copy_user_id": "Sao chép User Auth Token",
"developer_option": "Tùy chọn nhà phát triển",
"developer_option_description": "Công cụ nhà phát triển giúp phát triển và bảo trì Hoppscotch.",
@@ -73,6 +79,7 @@
"keyboard_shortcuts": "Phím tắt bàn phím",
"name": "Hoppscotch",
"new_version_found": "Phát hiện phiên bản mới. Làm mới để cập nhật.",
"open_in_hoppscotch": "Open in Hoppscotch",
"options": "Tùy chọn",
"proxy_privacy_policy": "Chính sách bảo mật Proxy",
"reload": "Tải lại",
@@ -112,10 +119,27 @@
},
"authorization": {
"generate_token": "Tạo token",
"graphql_headers": "Authorization Headers are sent as part of the payload to connection_init",
"include_in_url": "Bao gồm trong URL",
"inherited_from": "Inherited from {auth} from Parent Collection {collection} ",
"learn": "Tìm hiểu thêm",
"oauth": {
"redirect_auth_server_returned_error": "Auth Server returned an error state",
"redirect_auth_token_request_failed": "Request to get the auth token failed",
"redirect_auth_token_request_invalid_response": "Invalid Response from the Token Endpoint when requesting for an auth token",
"redirect_invalid_state": "Invalid State value present in the redirect",
"redirect_no_auth_code": "No Authorization Code present in the redirect",
"redirect_no_client_id": "No Client ID defined",
"redirect_no_client_secret": "No Client Secret Defined",
"redirect_no_code_verifier": "No Code Verifier Defined",
"redirect_no_token_endpoint": "No Token Endpoint Defined",
"something_went_wrong_on_oauth_redirect": "Something went wrong during OAuth Redirect",
"something_went_wrong_on_token_generation": "Something went wrong on token generation",
"token_generation_oidc_discovery_failed": "Failure on token generation: OpenID Connect Discovery Failed"
},
"pass_key_by": "Truyền qua",
"password": "Mật khẩu",
"save_to_inherit": "Please save this request in any collection to inherit the authorization",
"token": "Token",
"type": "Loại ủy quyền",
"username": "Tên người dùng"
@@ -124,6 +148,7 @@
"created": "Tạo bộ sưu tập thành công",
"different_parent": "Không thể sắp xếp lại bộ sưu tập với cha khác",
"edit": "Chỉnh sửa bộ sưu tập",
"import_or_create": "Import or create a collection",
"invalid_name": "Vui lòng cung cấp tên cho bộ sưu tập",
"invalid_root_move": "Bộ sưu tập đã nằm trong thư mục gốc",
"moved": "Di chuyển thành công",
@@ -132,6 +157,8 @@
"name_length_insufficient": "Tên bộ sưu tập phải có ít nhất 3 ký tự",
"new": "Bộ sưu tập mới",
"order_changed": "Cập nhật thứ tự bộ sưu tập thành công",
"properties": "Collection Properties",
"properties_updated": "Collection Properties Updated",
"renamed": "Đổi tên bộ sưu tập thành công",
"request_in_use": "Request đang được sử dụng",
"save_as": "Lưu thành",
@@ -151,6 +178,7 @@
"remove_folder": "Bạn có chắc chắn muốn xóa vĩnh viễn thư mục này?",
"remove_history": "Bạn có chắc chắn muốn xóa vĩnh viễn toàn bộ lịch sử?",
"remove_request": "Bạn có chắc chắn muốn xóa vĩnh viễn request này?",
"remove_shared_request": "Are you sure you want to permanently delete this shared request?",
"remove_team": "Bạn có chắc chắn muốn xóa nhóm này?",
"remove_telemetry": "Bạn có chắc chắn muốn tắt Telemetry?",
"request_change": "Bạn có chắc chắn muốn hủy request hiện tại? Những thay đổi chưa được lưu sẽ bị mất.",
@@ -162,6 +190,24 @@
"open_request_in_new_tab": "Open request in new tab",
"set_environment_variable": "Set as variable"
},
"cookies": {
"modal": {
"cookie_expires": "Expires",
"cookie_name": "Name",
"cookie_path": "Path",
"cookie_string": "Cookie string",
"cookie_value": "Value",
"empty_domain": "Domain is empty",
"empty_domains": "Domain list is empty",
"enter_cookie_string": "Enter cookie string",
"interceptor_no_support": "Your currently selected interceptor does not support cookies. Select a different Interceptor and try again.",
"managed_tab": "Managed",
"new_domain_name": "New domain name",
"no_cookies_in_domain": "No cookies set for this domain",
"raw_tab": "Raw",
"set": "Set a cookie"
}
},
"count": {
"header": "Tiêu đề {count}",
"message": "Thông điệp {count}",
@@ -192,11 +238,13 @@
"profile": "Đăng nhập để xem hồ sơ của bạn",
"protocols": "Danh sách giao thức trống rỗng",
"schema": "Kết nối với điểm cuối GraphQL để xem lược đồ",
"shortcodes": "Danh sách mã ngắn trống rỗng",
"shared_requests": "Shared requests are empty",
"shared_requests_logout": "Login to view your shared requests or create a new one",
"subscription": "Danh sách đăng ký trống rỗng",
"team_name": "Tên nhóm trống rỗng",
"teams": "Bạn không thuộc bất kỳ nhóm nào",
"tests": "Không có bài kiểm tra cho request này"
"tests": "Không có bài kiểm tra cho request này",
"shortcodes": "Danh sách mã ngắn trống rỗng"
},
"environment": {
"add_to_global": "Thêm vào Global",
@@ -209,6 +257,7 @@
"empty_variables": "No variables",
"global": "Global",
"global_variables": "Global variables",
"import_or_create": "Import or create a environment",
"invalid_name": "Vui lòng cung cấp tên cho môi trường",
"list": "Environment variables",
"my_environments": "Môi trường của tôi",
@@ -232,8 +281,10 @@
"variable_list": "Danh sách biến"
},
"error": {
"authproviders_load_error": "Unable to load auth providers",
"browser_support_sse": "Trình duyệt này không hỗ trợ Server Sent Events.",
"check_console_details": "Kiểm tra log console để biết thêm chi tiết.",
"check_how_to_add_origin": "Check how you can add an origin",
"curl_invalid_format": "cURL không được định dạng đúng",
"danger_zone": "Vùng nguy hiểm",
"delete_account": "Tài khoản của bạn hiện là chủ sở hữu trong các nhóm sau:",
@@ -249,9 +300,12 @@
"json_prettify_invalid_body": "Không thể định dạng đẹp một phần thân không hợp lệ, giải quyết lỗi cú pháp JSON và thử lại",
"network_error": "Có vẻ như có lỗi mạng. Vui lòng thử lại.",
"network_fail": "Không thể gửi request",
"no_collections_to_export": "No collections to export. Please create a collection to get started.",
"no_duration": "Không có khoảng thời gian",
"no_environments_to_export": "No environments to export. Please create an environment to get started.",
"no_results_found": "Không tìm thấy kết quả",
"page_not_found": "Không tìm thấy trang này",
"please_install_extension": "Please install the extension and add origin to the extension.",
"proxy_error": "Proxy error",
"script_fail": "Không thể thực thi kịch bản trước request",
"something_went_wrong": "Đã xảy ra lỗi",
@@ -260,6 +314,7 @@
"export": {
"as_json": "Xuất dưới dạng JSON",
"create_secret_gist": "Tạo Gist bí mật",
"failed": "Something went wrong while exporting",
"gist_created": "Gist đã được tạo",
"require_github": "Đăng nhập bằng GitHub để tạo Gist bí mật",
"title": "Xuất"
@@ -286,6 +341,9 @@
"subscriptions": "Subscriptions",
"switch_connection": "Switch connection"
},
"graphql_collections": {
"title": "GraphQL Collections"
},
"group": {
"time": "Thời gian",
"url": "URL"
@@ -297,6 +355,8 @@
},
"helpers": {
"authorization": "Tiêu đề ủy quyền sẽ được tự động tạo khi bạn gửi request.",
"collection_properties_authorization": " This authorization will be set for every request in this collection.",
"collection_properties_header": "This header will be set for every request in this collection.",
"generate_documentation_first": "Tạo tài liệu trước",
"network_fail": "Không thể kết nối đến điểm cuối API. Kiểm tra kết nối mạng của bạn hoặc chọn một Interceptor khác và thử lại.",
"offline": "Có vẻ như bạn đang offline. Dữ liệu trong không gian làm việc này có thể không được cập nhật.",
@@ -316,7 +376,10 @@
"import": {
"collections": "Nhập bộ sưu tập",
"curl": "Nhập cURL",
"environments_from_gist": "Import From Gist",
"environments_from_gist_description": "Import Hoppscotch Environments From Gist",
"failed": "Lỗi khi nhập: định dạng không được nhận dạng",
"from_file": "Import from File",
"from_gist": "Nhập từ Gist",
"from_gist_description": "Nhập từ đường dẫn Gist",
"from_insomnia": "Nhập từ Insomnia",
@@ -331,11 +394,17 @@
"from_postman_description": "Nhập từ bộ sưu tập Postman",
"from_url": "Nhập từ URL",
"gist_url": "Nhập URL Gist",
"gql_collections_from_gist_description": "Import GraphQL Collections From Gist",
"hoppscotch_environment": "Hoppscotch Environment",
"hoppscotch_environment_description": "Import Hoppscotch Environment JSON file",
"import_from_url_invalid_fetch": "Không thể lấy dữ liệu từ URL",
"import_from_url_invalid_file_format": "Lỗi khi nhập bộ sưu tập",
"import_from_url_invalid_type": "Loại không được hỗ trợ. Giá trị chấp nhận được là 'hoppscotch', 'openapi', 'postman', 'insomnia'",
"import_from_url_success": "Bộ sưu tập đã được nhập",
"insomnia_environment_description": "Import Insomnia Environment from a JSON/YAML file",
"json_description": "Nhập bộ sưu tập từ tệp JSON Hoppscotch",
"postman_environment": "Postman Environment",
"postman_environment_description": "Import Postman Environment from a JSON file",
"title": "Nhập"
},
"inspections": {
@@ -373,8 +442,10 @@
"close_unsaved_tab": "Bạn có các thay đổi chưa được lưu",
"collections": "Bộ sưu tập",
"confirm": "Xác nhận",
"customize_request": "Customize Request",
"edit_request": "Chỉnh sửa request",
"import_export": "Nhập / Xuất"
"import_export": "Nhập / Xuất",
"share_request": "Share Request"
},
"mqtt": {
"already_subscribed": "Bạn đã đăng ký theo dõi chủ đề này.",
@@ -449,13 +520,14 @@
"structured": "Cấu trúc",
"text": "Văn bản"
},
"copy_link": "Sao chép liên kết",
"different_collection": "Không thể sắp xếp lại các request từ các bộ sưu tập khác nhau",
"duplicated": "Request đã được nhân bản",
"duration": "Thời lượng",
"enter_curl": "Nhập lệnh cURL",
"generate_code": "Tạo mã",
"generated_code": "Mã được tạo",
"go_to_authorization_tab": "Go to Authorization tab",
"go_to_body_tab": "Go to Body tab",
"header_list": "Danh sách header",
"invalid_name": "Vui lòng cung cấp một tên cho request",
"method": "Phương thức",
@@ -480,12 +552,14 @@
"saved": "Đã lưu",
"share": "Chia sẻ",
"share_description": "Chia sẻ Hoppscotch với bạn bè của bạn",
"share_request": "Share Request",
"stop": "Stop",
"title": "Request",
"type": "Loại request",
"url": "URL",
"variables": "Biến",
"view_my_links": "Xem các liên kết của tôi"
"view_my_links": "Xem các liên kết của tôi",
"copy_link": "Sao chép liên kết"
},
"response": {
"audio": "Âm thanh",
@@ -513,6 +587,7 @@
"account_description": "Tùy chỉnh cài đặt tài khoản của bạn.",
"account_email_description": "Địa chỉ email chính của bạn.",
"account_name_description": "Đây là tên hiển thị của bạn.",
"additional": "Additional Settings",
"background": "Nền",
"black_mode": "Chế độ Đen",
"choose_language": "Chọn ngôn ngữ",
@@ -559,14 +634,31 @@
"verified_email": "Email đã xác minh",
"verify_email": "Xác minh email"
},
"shortcodes": {
"actions": "Hành động",
"created_on": "Được tạo vào",
"deleted": "Shortcode đã bị xóa",
"method": "Phương thức",
"not_found": "Không tìm thấy Shortcode",
"short_code": "Short code",
"url": "URL"
"shared_requests": {
"button": "Button",
"button_info": "Create a 'Run in Hoppscotch' button for your website, blog or a README.",
"copy_html": "Copy HTML",
"copy_link": "Copy Link",
"copy_markdown": "Copy Markdown",
"creating_widget": "Creating widget",
"customize": "Customize",
"deleted": "Shared request deleted",
"description": "Select a widget, you can change and customize this later",
"embed": "Embed",
"embed_info": "Add a mini 'Hoppscotch API Playground' to your website, blog or documentation.",
"link": "Link",
"link_info": "Create a shareable link to share with anyone on the internet with view access.",
"modified": "Shared request modified",
"not_found": "Shared request not found",
"open_new_tab": "Open in new tab",
"preview": "Preview",
"run_in_hoppscotch": "Run in Hoppscotch",
"theme": {
"dark": "Dark",
"light": "Light",
"system": "System",
"title": "Theme"
}
},
"shortcut": {
"general": {
@@ -596,7 +688,6 @@
"title": "Others"
},
"request": {
"copy_request_link": "Sao chép liên kết request",
"delete_method": "Chọn phương thức DELETE",
"get_method": "Chọn phương thức GET",
"head_method": "Chọn phương thức HEAD",
@@ -611,8 +702,10 @@
"save_request": "Save Request",
"save_to_collections": "Lưu vào bộ sưu tập",
"send_request": "Gửi request",
"share_request": "Share Request",
"show_code": "Generate code snippet",
"title": "Request"
"title": "Request",
"copy_request_link": "Sao chép liên kết request"
},
"response": {
"copy": "Sao chép phản hồi vào clipboard",
@@ -735,6 +828,7 @@
"connection_error": "Không thể kết nối",
"connection_failed": "Kết nối thất bại",
"connection_lost": "Mất kết nối",
"copied_interface_to_clipboard": "Copied {language} interface type to clipboard",
"copied_to_clipboard": "Đã sao chép vào clipboard",
"deleted": "Đã xóa",
"deprecated": "ĐÃ LỖI THỜI",
@@ -742,10 +836,12 @@
"disconnected": "Đã ngắt kết nối",
"disconnected_from": "Đã ngắt kết nối từ {name}",
"docs_generated": "Tài liệu đã được tạo",
"download_failed": "Download failed",
"download_started": "Đã bắt đầu tải xuống",
"enabled": "Đã kích hoạt",
"file_imported": "Đã nhập tệp",
"finished_in": "Hoàn thành trong {duration} ms",
"hide": "Hide",
"history_deleted": "Lịch sử đã bị xóa",
"linewrap": "Xuống dòng",
"loading": "Đang tải...",
@@ -756,6 +852,7 @@
"published_error": "Đã xảy ra sự cố khi xuất bản tin nhắn: {message} đến chủ đề: {topic}",
"published_message": "Đã xuất bản tin nhắn: {message} đến chủ đề: {topic}",
"reconnection_error": "Không thể kết nối lại",
"show": "Show",
"subscribed_failed": "Không thể đăng ký chủ đề: {topic}",
"subscribed_success": "Đã đăng ký thành công chủ đề: {topic}",
"unsubscribed_failed": "Không thể hủy đăng ký khỏi chủ đề: {topic}",
@@ -791,6 +888,7 @@
"queries": "Truy vấn",
"query": "Truy vấn",
"schema": "Schema",
"shared_requests": "Shared Requests",
"socketio": "Socket.IO",
"sse": "SSE",
"tests": "Kiểm tra",
@@ -807,6 +905,7 @@
"email_do_not_match": "Email không khớp với thông tin tài khoản của bạn. Liên hệ với chủ sở hữu nhóm.",
"exit": "Rời khỏi Nhóm",
"exit_disabled": "Chỉ chủ sở hữu không thể rời khỏi nhóm",
"failed_invites": "Failed invites",
"invalid_coll_id": "ID bộ sưu tập không hợp lệ",
"invalid_email_format": "Định dạng email không hợp lệ",
"invalid_id": "ID nhóm không hợp lệ. Liên hệ với chủ sở hữu nhóm.",
@@ -848,6 +947,7 @@
"same_target_destination": "Cùng mục tiêu và đích",
"saved": "Đã lưu nhóm",
"select_a_team": "Chọn một nhóm",
"success_invites": "Success invites",
"title": "Nhóm",
"we_sent_invite_link": "Chúng tôi đã gửi một liên kết mời đến tất cả người được mời!",
"we_sent_invite_link_description": "Yêu cầu tất cả người được mời kiểm tra hộp thư đến của họ. Nhấp vào liên kết để tham gia nhóm."
@@ -879,5 +979,14 @@
"personal": "Không gian làm việc của tôi",
"team": "Không gian làm việc nhóm",
"title": "Không gian làm việc"
},
"shortcodes": {
"actions": "Hành động",
"created_on": "Được tạo vào",
"deleted": "Shortcode đã bị xóa",
"method": "Phương thức",
"not_found": "Không tìm thấy Shortcode",
"short_code": "Short code",
"url": "URL"
}
}

View File

@@ -1,7 +1,7 @@
{
"name": "@hoppscotch/common",
"private": true,
"version": "2023.8.4-1",
"version": "2023.12.0-1",
"scripts": {
"dev": "pnpm exec npm-run-all -p -l dev:*",
"test": "vitest --run",
@@ -22,21 +22,21 @@
},
"dependencies": {
"@apidevtools/swagger-parser": "^10.1.0",
"@codemirror/autocomplete": "^6.11.0",
"@codemirror/commands": "^6.3.0",
"@codemirror/autocomplete": "^6.11.1",
"@codemirror/commands": "^6.3.2",
"@codemirror/lang-javascript": "^6.2.1",
"@codemirror/lang-json": "^6.0.1",
"@codemirror/lang-xml": "^6.0.2",
"@codemirror/language": "6.9.2",
"@codemirror/language": "6.9.3",
"@codemirror/legacy-modes": "^6.3.3",
"@codemirror/lint": "^6.4.2",
"@codemirror/search": "^6.5.4",
"@codemirror/state": "^6.3.1",
"@codemirror/view": "^6.22.0",
"@codemirror/search": "^6.5.5",
"@codemirror/state": "^6.3.3",
"@codemirror/view": "^6.22.3",
"@hoppscotch/codemirror-lang-graphql": "workspace:^",
"@hoppscotch/data": "workspace:^",
"@hoppscotch/js-sandbox": "workspace:^",
"@hoppscotch/ui": "workspace:^",
"@hoppscotch/ui": "^0.1.0",
"@hoppscotch/vue-toasted": "^0.1.0",
"@lezer/highlight": "1.2.0",
"@unhead/vue": "^1.8.8",
@@ -88,8 +88,8 @@
"tippy.js": "^6.3.7",
"url": "^0.11.3",
"util": "^0.12.5",
"verzod": "^0.2.0",
"uuid": "^9.0.1",
"verzod": "^0.2.0",
"vue": "^3.3.8",
"vue-i18n": "^9.7.1",
"vue-pdf-embed": "^1.2.1",

View File

@@ -8,7 +8,6 @@ export {}
declare module 'vue' {
export interface GlobalComponents {
AppActionHandler: typeof import('./components/app/ActionHandler.vue')['default']
AppAnnouncement: typeof import('./components/app/Announcement.vue')['default']
AppBanner: typeof import('./components/app/Banner.vue')['default']
AppContextMenu: typeof import('./components/app/ContextMenu.vue')['default']
AppDeveloperOptions: typeof import('./components/app/DeveloperOptions.vue')['default']
@@ -33,8 +32,6 @@ declare module 'vue' {
AppSpotlightEntryRESTHistory: typeof import('./components/app/spotlight/entry/RESTHistory.vue')['default']
AppSpotlightEntryRESTRequest: typeof import('./components/app/spotlight/entry/RESTRequest.vue')['default']
AppSupport: typeof import('./components/app/Support.vue')['default']
ButtonPrimary: typeof import('./../../hoppscotch-ui/src/components/button/Primary.vue')['default']
ButtonSecondary: typeof import('./../../hoppscotch-ui/src/components/button/Secondary.vue')['default']
Collections: typeof import('./components/collections/index.vue')['default']
CollectionsAdd: typeof import('./components/collections/Add.vue')['default']
CollectionsAddFolder: typeof import('./components/collections/AddFolder.vue')['default']
@@ -56,6 +53,7 @@ declare module 'vue' {
CollectionsGraphqlRequest: typeof import('./components/collections/graphql/Request.vue')['default']
CollectionsImportExport: typeof import('./components/collections/ImportExport.vue')['default']
CollectionsMyCollections: typeof import('./components/collections/MyCollections.vue')['default']
CollectionsProperties: typeof import('./components/collections/Properties.vue')['default']
CollectionsRequest: typeof import('./components/collections/Request.vue')['default']
CollectionsSaveRequest: typeof import('./components/collections/SaveRequest.vue')['default']
CollectionsTeamCollections: typeof import('./components/collections/TeamCollections.vue')['default']
@@ -94,7 +92,6 @@ declare module 'vue' {
HoppButtonPrimary: typeof import('@hoppscotch/ui')['HoppButtonPrimary']
HoppButtonSecondary: typeof import('@hoppscotch/ui')['HoppButtonSecondary']
HoppSmartAnchor: typeof import('@hoppscotch/ui')['HoppSmartAnchor']
HoppSmartAutoComplete: typeof import('@hoppscotch/ui')['HoppSmartAutoComplete']
HoppSmartCheckbox: typeof import('@hoppscotch/ui')['HoppSmartCheckbox']
HoppSmartConfirmModal: typeof import('@hoppscotch/ui')['HoppSmartConfirmModal']
HoppSmartExpand: typeof import('@hoppscotch/ui')['HoppSmartExpand']
@@ -145,11 +142,9 @@ declare module 'vue' {
HttpTests: typeof import('./components/http/Tests.vue')['default']
HttpURLEncodedParams: typeof import('./components/http/URLEncodedParams.vue')['default']
IconLucideActivity: typeof import('~icons/lucide/activity')['default']
IconLucideAlertCircle: typeof import('~icons/lucide/alert-circle')['default']
IconLucideAlertTriangle: typeof import('~icons/lucide/alert-triangle')['default']
IconLucideArrowLeft: typeof import('~icons/lucide/arrow-left')['default']
IconLucideArrowUpRight: typeof import('~icons/lucide/arrow-up-right')['default']
IconLucideBrush: typeof import('~icons/lucide/brush')['default']
IconLucideCheckCircle: typeof import('~icons/lucide/check-circle')['default']
IconLucideChevronRight: typeof import('~icons/lucide/chevron-right')['default']
IconLucideGlobe: typeof import('~icons/lucide/globe')['default']
@@ -162,7 +157,6 @@ declare module 'vue' {
IconLucideRss: typeof import('~icons/lucide/rss')['default']
IconLucideSearch: typeof import('~icons/lucide/search')['default']
IconLucideUsers: typeof import('~icons/lucide/users')['default']
IconLucideVerified: typeof import('~icons/lucide/verified')['default']
IconLucideX: typeof import('~icons/lucide/x')['default']
ImportExportBase: typeof import('./components/importExport/Base.vue')['default']
ImportExportImportExportList: typeof import('./components/importExport/ImportExportList.vue')['default']
@@ -183,8 +177,6 @@ declare module 'vue' {
LensesRenderersVideoLensRenderer: typeof import('./components/lenses/renderers/VideoLensRenderer.vue')['default']
LensesRenderersXMLLensRenderer: typeof import('./components/lenses/renderers/XMLLensRenderer.vue')['default']
LensesResponseBodyRenderer: typeof import('./components/lenses/ResponseBodyRenderer.vue')['default']
ProfileShortcode: typeof import('./components/profile/Shortcode.vue')['default']
ProfileShortcodes: typeof import('./components/profile/Shortcodes.vue')['default']
ProfileUserDelete: typeof import('./components/profile/UserDelete.vue')['default']
RealtimeCommunication: typeof import('./components/realtime/Communication.vue')['default']
RealtimeConnectionConfig: typeof import('./components/realtime/ConnectionConfig.vue')['default']
@@ -198,42 +190,13 @@ declare module 'vue' {
ShareCustomizeModal: typeof import('./components/share/CustomizeModal.vue')['default']
ShareModal: typeof import('./components/share/Modal.vue')['default']
ShareRequest: typeof import('./components/share/Request.vue')['default']
ShareRequestModal: typeof import('./components/share/RequestModal.vue')['default']
ShareShareRequestModal: typeof import('./components/share/ShareRequestModal.vue')['default']
ShareTemplatesButton: typeof import('./components/share/templates/Button.vue')['default']
ShareTemplatesEmbeds: typeof import('./components/share/templates/Embeds.vue')['default']
ShareTemplatesLink: typeof import('./components/share/templates/Link.vue')['default']
SmartAccentModePicker: typeof import('./components/smart/AccentModePicker.vue')['default']
SmartAnchor: typeof import('./../../hoppscotch-ui/src/components/smart/Anchor.vue')['default']
SmartAutoComplete: typeof import('./../../hoppscotch-ui/src/components/smart/AutoComplete.vue')['default']
SmartChangeLanguage: typeof import('./components/smart/ChangeLanguage.vue')['default']
SmartCheckbox: typeof import('./../../hoppscotch-ui/src/components/smart/Checkbox.vue')['default']
SmartColorModePicker: typeof import('./components/smart/ColorModePicker.vue')['default']
SmartConfirmModal: typeof import('./../../hoppscotch-ui/src/components/smart/ConfirmModal.vue')['default']
SmartEnvInput: typeof import('./components/smart/EnvInput.vue')['default']
SmartExpand: typeof import('./../../hoppscotch-ui/src/components/smart/Expand.vue')['default']
SmartFileChip: typeof import('./../../hoppscotch-ui/src/components/smart/FileChip.vue')['default']
SmartInput: typeof import('./../../hoppscotch-ui/src/components/smart/Input.vue')['default']
SmartIntersection: typeof import('./../../hoppscotch-ui/src/components/smart/Intersection.vue')['default']
SmartItem: typeof import('./../../hoppscotch-ui/src/components/smart/Item.vue')['default']
SmartLink: typeof import('./../../hoppscotch-ui/src/components/smart/Link.vue')['default']
SmartModal: typeof import('./../../hoppscotch-ui/src/components/smart/Modal.vue')['default']
SmartPicture: typeof import('./../../hoppscotch-ui/src/components/smart/Picture.vue')['default']
SmartPlaceholder: typeof import('./../../hoppscotch-ui/src/components/smart/Placeholder.vue')['default']
SmartProgressRing: typeof import('./../../hoppscotch-ui/src/components/smart/ProgressRing.vue')['default']
SmartRadio: typeof import('./../../hoppscotch-ui/src/components/smart/Radio.vue')['default']
SmartRadioGroup: typeof import('./../../hoppscotch-ui/src/components/smart/RadioGroup.vue')['default']
SmartSelectWrapper: typeof import('./../../hoppscotch-ui/src/components/smart/SelectWrapper.vue')['default']
SmartSlideOver: typeof import('./../../hoppscotch-ui/src/components/smart/SlideOver.vue')['default']
SmartSpinner: typeof import('./../../hoppscotch-ui/src/components/smart/Spinner.vue')['default']
SmartTab: typeof import('./../../hoppscotch-ui/src/components/smart/Tab.vue')['default']
SmartTable: typeof import('./../../hoppscotch-ui/src/components/smart/Table.vue')['default']
SmartTabs: typeof import('./../../hoppscotch-ui/src/components/smart/Tabs.vue')['default']
SmartToggle: typeof import('./../../hoppscotch-ui/src/components/smart/Toggle.vue')['default']
SmartTree: typeof import('./../../hoppscotch-ui/src/components/smart/Tree.vue')['default']
SmartTreeBranch: typeof import('./../../hoppscotch-ui/src/components/smart/TreeBranch.vue')['default']
SmartWindow: typeof import('./../../hoppscotch-ui/src/components/smart/Window.vue')['default']
SmartWindows: typeof import('./../../hoppscotch-ui/src/components/smart/Windows.vue')['default']
TabPrimary: typeof import('./components/tab/Primary.vue')['default']
TabSecondary: typeof import('./components/tab/Secondary.vue')['default']
Teams: typeof import('./components/teams/index.vue')['default']

View File

@@ -1,7 +1,7 @@
<template>
<AppShortcuts :show="showShortcuts" @close="showShortcuts = false" />
<AppShare :show="showShare" @hide-modal="showShare = false" />
<FirebaseLogin :show="showLogin" @hide-modal="showLogin = false" />
<FirebaseLogin v-if="showLogin" @hide-modal="showLogin = false" />
</template>
<script setup lang="ts">

View File

@@ -14,7 +14,7 @@
</span>
</div>
<icon-lucide-x
v-if="dismissible"
v-if="banner.dismissible"
class="opacity-50 hover:cursor-pointer hover:opacity-100"
@click="emit('dismiss')"
/>
@@ -30,15 +30,9 @@ import IconAlertCircle from "~icons/lucide/alert-circle"
import IconAlertTriangle from "~icons/lucide/alert-triangle"
import IconInfo from "~icons/lucide/info"
const props = withDefaults(
defineProps<{
banner: BannerContent
dismissible?: boolean
}>(),
{
dismissible: false,
}
)
const props = defineProps<{
banner: BannerContent
}>()
const t = useI18n()

View File

@@ -214,7 +214,6 @@
<AppBanner
v-if="bannerContent"
:banner="bannerContent"
:dismissible="true"
@dismiss="dismissOfflineBanner"
/>
<TeamsModal :show="showTeamsModal" @hide-modal="showTeamsModal = false" />
@@ -295,6 +294,7 @@ const offlineBanner: BannerContent = {
text: (t) => t("helpers.offline"),
alternateText: (t) => t("helpers.offline_short"),
score: BANNER_PRIORITY_HIGH,
dismissible: true,
}
const network = reactive(useNetwork())

View File

@@ -1,15 +1,16 @@
<template>
<Splitpanes
class="smart-splitter"
:rtl="SIDEBAR_ON_LEFT && mdAndLarger"
:class="{
'!flex-row-reverse': SIDEBAR_ON_LEFT && mdAndLarger,
'smart-splitter': SIDEBAR && hasSidebar,
'no-splitter': !(SIDEBAR && hasSidebar),
}"
:horizontal="!mdAndLarger"
@resize="setPaneEvent($event, 'vertical')"
>
<Pane
:size="PANE_MAIN_SIZE"
:size="SIDEBAR && hasSidebar ? PANE_MAIN_SIZE : 100"
min-size="65"
class="flex flex-col !overflow-auto"
>
@@ -36,9 +37,8 @@
</Splitpanes>
</Pane>
<Pane
v-if="SIDEBAR && hasSidebar"
:size="PANE_SIDEBAR_SIZE"
min-size="25"
:size="SIDEBAR && hasSidebar ? PANE_SIDEBAR_SIZE : 0"
:min-size="25"
class="flex flex-col !overflow-auto bg-primaryContrast"
>
<slot name="sidebar" />

View File

@@ -13,7 +13,7 @@
</template>
<script setup lang="ts">
import { HoppCollection, HoppGQLRequest } from "@hoppscotch/data"
import { HoppCollection } from "@hoppscotch/data"
import { computed } from "vue"
import { graphqlCollectionStore } from "~/newstore/collections"
@@ -28,7 +28,7 @@ const pathFolders = computed(() => {
.slice(0, -1)
.map((x) => parseInt(x))
const pathItems: HoppCollection<HoppGQLRequest>[] = []
const pathItems: HoppCollection[] = []
let currentFolder =
graphqlCollectionStore.value.state[folderIndicies.shift()!]

View File

@@ -20,7 +20,7 @@
</template>
<script setup lang="ts">
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data"
import { HoppCollection } from "@hoppscotch/data"
import { computed } from "vue"
import { restCollectionStore } from "~/newstore/collections"
import { getMethodLabelColorClassOf } from "~/helpers/rest/labelColoring"
@@ -36,7 +36,7 @@ const pathFolders = computed(() => {
.slice(0, -1)
.map((x) => parseInt(x))
const pathItems: HoppCollection<HoppRESTRequest>[] = []
const pathItems: HoppCollection[] = []
let currentFolder = restCollectionStore.value.state[folderIndicies.shift()!]
pathItems.push(currentFolder)

View File

@@ -96,6 +96,7 @@
@keyup.e="edit?.$el.click()"
@keyup.delete="deleteAction?.$el.click()"
@keyup.x="exportAction?.$el.click()"
@keyup.p="propertiesAction?.$el.click()"
@keyup.escape="hide()"
>
<HoppSmartItem
@@ -159,6 +160,18 @@
}
"
/>
<HoppSmartItem
ref="propertiesAction"
:icon="IconSettings2"
:label="t('action.properties')"
:shortcut="['P']"
@click="
() => {
emit('edit-properties')
hide()
}
"
/>
</div>
</template>
</tippy>
@@ -193,8 +206,9 @@ import IconTrash2 from "~icons/lucide/trash-2"
import IconEdit from "~icons/lucide/edit"
import IconFolder from "~icons/lucide/folder"
import IconFolderOpen from "~icons/lucide/folder-open"
import IconSettings2 from "~icons/lucide/settings-2"
import { ref, computed, watch } from "vue"
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data"
import { HoppCollection } from "@hoppscotch/data"
import { useI18n } from "@composables/i18n"
import { TippyComponent } from "vue-tippy"
import { TeamCollection } from "~/helpers/teams/TeamCollection"
@@ -213,7 +227,7 @@ const props = withDefaults(
defineProps<{
id: string
parentID?: string | null
data: HoppCollection<HoppRESTRequest> | TeamCollection
data: HoppCollection | TeamCollection
/**
* Collection component can be used for both collections and folders.
* folderType is used to determine which one it is.
@@ -245,6 +259,7 @@ const emit = defineEmits<{
(event: "add-request"): void
(event: "add-folder"): void
(event: "edit-collection"): void
(event: "edit-properties"): void
(event: "export-data"): void
(event: "remove-collection"): void
(event: "drop-event", payload: DataTransfer): void
@@ -261,6 +276,7 @@ const edit = ref<HTMLButtonElement | null>(null)
const deleteAction = ref<HTMLButtonElement | null>(null)
const exportAction = ref<HTMLButtonElement | null>(null)
const options = ref<TippyComponent | null>(null)
const propertiesAction = ref<TippyComponent | null>(null)
const dragging = ref(false)
const ordering = ref(false)
@@ -294,8 +310,8 @@ const collectionIcon = computed(() => {
})
const collectionName = computed(() => {
if ((props.data as HoppCollection<HoppRESTRequest>).name)
return (props.data as HoppCollection<HoppRESTRequest>).name
if ((props.data as HoppCollection).name)
return (props.data as HoppCollection).name
return (props.data as TeamCollection).title
})

View File

@@ -9,7 +9,10 @@
</template>
<script setup lang="ts">
import { HoppCollection } from "@hoppscotch/data"
import * as E from "fp-ts/Either"
import { PropType, computed, ref } from "vue"
import { FileSource } from "~/helpers/import-export/import/import-sources/FileSource"
import { UrlSource } from "~/helpers/import-export/import/import-sources/UrlSource"
@@ -24,12 +27,9 @@ import {
} from "~/helpers/import-export/import/importers"
import { defineStep } from "~/composables/step-components"
import { PropType, computed, ref } from "vue"
import { useI18n } from "~/composables/i18n"
import { useToast } from "~/composables/toast"
import { HoppCollection } from "@hoppscotch/data"
import { HoppRESTRequest } from "@hoppscotch/data"
import { appendRESTCollections, restCollections$ } from "~/newstore/collections"
import MyCollectionImport from "~/components/importExport/ImportExportSteps/MyCollectionImport.vue"
import { GetMyTeamsQuery } from "~/helpers/backend/graphql"
@@ -49,7 +49,7 @@ import { getTeamCollectionJSON } from "~/helpers/backend/helpers"
import { platform } from "~/platform"
import { initializeDownloadCollection } from "~/helpers/import-export/export"
import { collectionsGistExporter } from "~/helpers/import-export/export/gistExport"
import { gistExporter } from "~/helpers/import-export/export/gist"
import { myCollectionsExporter } from "~/helpers/import-export/export/myCollections"
import { teamCollectionsExporter } from "~/helpers/import-export/export/teamCollections"
@@ -84,13 +84,13 @@ const currentUser = useReadonlyStream(
platform.auth.getCurrentUser()
)
const myCollections = useReadonlyStream(restCollections$, [])
const showImportFailedError = () => {
toast.error(t("import.failed"))
}
const handleImportToStore = async (
collections: HoppCollection<HoppRESTRequest>[]
) => {
const handleImportToStore = async (collections: HoppCollection[]) => {
const importResult =
props.collectionsType.type === "my-collections"
? await importToPersonalWorkspace(collections)
@@ -104,26 +104,47 @@ const handleImportToStore = async (
}
}
const importToPersonalWorkspace = (
collections: HoppCollection<HoppRESTRequest>[]
) => {
const importToPersonalWorkspace = (collections: HoppCollection[]) => {
appendRESTCollections(collections)
return E.right({
success: true,
})
}
const importToTeamsWorkspace = async (
collections: HoppCollection<HoppRESTRequest>[]
) => {
function translateToTeamCollectionFormat(x: HoppCollection) {
const folders: HoppCollection[] = (x.folders ?? []).map(
translateToTeamCollectionFormat
)
const data = {
auth: x.auth,
headers: x.headers,
}
const obj = {
...x,
folders,
data,
}
if (x.id) obj.id = x.id
return obj
}
const importToTeamsWorkspace = async (collections: HoppCollection[]) => {
if (!hasTeamWriteAccess.value || !selectedTeamID.value) {
return E.left({
success: false,
})
}
const transformedCollection = collections.map((collection) =>
translateToTeamCollectionFormat(collection)
)
const res = await toTeamsImporter(
JSON.stringify(collections),
JSON.stringify(transformedCollection),
selectedTeamID.value
)()
@@ -407,7 +428,6 @@ const HoppTeamCollectionsExporter: ImporterOrExporter = {
},
action: async () => {
isHoppTeamCollectionExporterInProgress.value = true
if (
props.collectionsType.type === "team-collections" &&
props.collectionsType.selectedTeam
@@ -451,8 +471,13 @@ const HoppGistCollectionsExporter: ImporterOrExporter = {
icon: IconGithub,
disabled: !currentUser.value
? true
: currentUser.value.provider !== "github.com",
title: t("export.create_secret_gist"),
: currentUser.value?.provider !== "github.com",
title:
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
currentUser?.value?.provider === "github.com"
? "export.create_secret_gist_tooltip_text"
: "export.require_github",
applicableTo: ["personal-workspace", "team-workspace"],
isLoading: isHoppGistCollectionExporterInProgress,
},
@@ -469,13 +494,27 @@ const HoppGistCollectionsExporter: ImporterOrExporter = {
}
if (E.isRight(collectionJSON)) {
collectionsGistExporter(collectionJSON.right, accessToken)
if (!JSON.parse(collectionJSON.right).length) {
isHoppGistCollectionExporterInProgress.value = false
return toast.error(t("error.no_collections_to_export"))
}
const res = await gistExporter(collectionJSON.right, accessToken)
if (E.isLeft(res)) {
toast.error(t("export.failed"))
return
}
toast.success(t("export.secret_gist_success"))
platform.analytics?.logEvent({
type: "HOPP_EXPORT_COLLECTION",
exporter: "gist",
platform: "rest",
})
platform.io.openExternalLink(res.right)
}
isHoppGistCollectionExporterInProgress.value = false
@@ -543,8 +582,6 @@ const selectedTeamID = computed(() => {
: undefined
})
const myCollections = useReadonlyStream(restCollections$, [])
const getCollectionJSON = async () => {
if (
props.collectionsType.type === "team-collections" &&

View File

@@ -71,6 +71,13 @@
collection: node.data.data.data,
})
"
@edit-properties="
node.data.type === 'collections' &&
emit('edit-properties', {
collectionIndex: node.id,
collection: node.data.data.data,
})
"
@export-data="
node.data.type === 'collections' &&
emit('export-data', node.data.data.data)
@@ -139,6 +146,13 @@
folder: node.data.data.data,
})
"
@edit-properties="
node.data.type === 'folders' &&
emit('edit-properties', {
collectionIndex: node.id,
collection: node.data.data.data,
})
"
@export-data="
node.data.type === 'folders' &&
emit('export-data', node.data.data.data)
@@ -327,10 +341,7 @@ import IconImport from "~icons/lucide/folder-down"
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data"
import { computed, PropType, Ref, toRef } from "vue"
import { GetMyTeamsQuery } from "~/helpers/backend/graphql"
import {
ChildrenResult,
SmartTreeAdapter,
} from "@hoppscotch/ui/dist/helpers/treeAdapter"
import { ChildrenResult, SmartTreeAdapter } from "@hoppscotch/ui/helpers"
import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import { pipe } from "fp-ts/function"
@@ -344,7 +355,7 @@ export type Collection = {
isLastItem: boolean
data: {
parentIndex: null
data: HoppCollection<HoppRESTRequest>
data: HoppCollection
}
}
@@ -353,7 +364,7 @@ type Folder = {
isLastItem: boolean
data: {
parentIndex: string
data: HoppCollection<HoppRESTRequest>
data: HoppCollection
}
}
@@ -380,7 +391,7 @@ type CollectionType =
const props = defineProps({
filteredCollections: {
type: Array as PropType<HoppCollection<HoppRESTRequest>[]>,
type: Array as PropType<HoppCollection[]>,
default: () => [],
required: true,
},
@@ -412,28 +423,35 @@ const emit = defineEmits<{
event: "add-request",
payload: {
path: string
folder: HoppCollection<HoppRESTRequest>
folder: HoppCollection
}
): void
(
event: "add-folder",
payload: {
path: string
folder: HoppCollection<HoppRESTRequest>
folder: HoppCollection
}
): void
(
event: "edit-collection",
payload: {
collectionIndex: string
collection: HoppCollection<HoppRESTRequest>
collection: HoppCollection
}
): void
(
event: "edit-folder",
payload: {
folderPath: string
folder: HoppCollection<HoppRESTRequest>
folder: HoppCollection
}
): void
(
event: "edit-properties",
payload: {
collectionIndex: string
collection: HoppCollection
}
): void
(
@@ -451,7 +469,7 @@ const emit = defineEmits<{
request: HoppRESTRequest
}
): void
(event: "export-data", payload: HoppCollection<HoppRESTRequest>): void
(event: "export-data", payload: HoppCollection): void
(event: "remove-collection", payload: string): void
(event: "remove-folder", payload: string): void
(
@@ -665,10 +683,10 @@ const updateCollectionOrder = (
type MyCollectionNode = Collection | Folder | Requests
class MyCollectionsAdapter implements SmartTreeAdapter<MyCollectionNode> {
constructor(public data: Ref<HoppCollection<HoppRESTRequest>[]>) {}
constructor(public data: Ref<HoppCollection[]>) {}
navigateToFolderWithIndexPath(
collections: HoppCollection<HoppRESTRequest>[],
collections: HoppCollection[],
indexPaths: number[]
) {
if (indexPaths.length === 0) return null

View File

@@ -0,0 +1,164 @@
<template>
<HoppSmartModal
v-if="show"
dialog
:title="t('collection.properties')"
:full-width-body="true"
@close="hideModal"
>
<template #body>
<HoppSmartTabs
v-model="selectedOptionTab"
styles="sticky overflow-x-auto flex-shrink-0 bg-primary top-0 z-10 !-py-4"
render-inactive-tabs
>
<HoppSmartTab :id="'headers'" :label="`${t('tab.headers')}`">
<HttpHeaders
v-model="editableCollection"
:is-collection-property="true"
@change-tab="changeOptionTab"
/>
<div
class="bg-bannerInfo px-4 py-2 flex items-center sticky bottom-0"
>
<icon-lucide-info class="svg-icons mr-2" />
{{ t("helpers.collection_properties_header") }}
</div>
</HoppSmartTab>
<HoppSmartTab
:id="'authorization'"
:label="`${t('tab.authorization')}`"
>
<HttpAuthorization
v-model="editableCollection.auth"
:is-collection-property="true"
:is-root-collection="editingProperties?.isRootCollection"
:inherited-properties="editingProperties?.inheritedProperties"
/>
<div
class="bg-bannerInfo px-4 py-2 flex items-center sticky bottom-0"
>
<icon-lucide-info class="svg-icons mr-2" />
{{ t("helpers.collection_properties_authorization") }}
</div>
</HoppSmartTab>
</HoppSmartTabs>
</template>
<template #footer>
<span class="flex space-x-2">
<HoppButtonPrimary
:label="t('action.save')"
:loading="loadingState"
outline
@click="saveEditedCollection"
/>
<HoppButtonSecondary
:label="t('action.cancel')"
outline
filled
@click="hideModal"
/>
</span>
</template>
</HoppSmartModal>
</template>
<script setup lang="ts">
import { watch, ref } from "vue"
import { useI18n } from "@composables/i18n"
import { HoppCollection } from "@hoppscotch/data"
import { RESTOptionTabs } from "../http/RequestOptions.vue"
import { TeamCollection } from "~/helpers/teams/TeamCollection"
import { clone } from "lodash-es"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const t = useI18n()
type EditingProperties = {
collection: HoppCollection | TeamCollection | null
isRootCollection: boolean
path: string
inheritedProperties: HoppInheritedProperty | undefined
}
const props = withDefaults(
defineProps<{
show: boolean
loadingState: boolean
editingProperties: EditingProperties | null
}>(),
{
show: false,
loadingState: false,
editingProperties: null,
}
)
const emit = defineEmits<{
(e: "set-collection-properties", newCollection: any): void
(e: "hide-modal"): void
}>()
const editableCollection = ref({
body: {
contentType: null,
body: null,
},
headers: [],
auth: {
authType: "inherit",
authActive: false,
},
}) as any
const selectedOptionTab = ref("headers")
const changeOptionTab = (tab: RESTOptionTabs) => {
selectedOptionTab.value = tab
}
watch(
() => props.show,
(show) => {
if (show && props.editingProperties?.collection) {
editableCollection.value.auth = clone(
props.editingProperties.collection.auth
)
editableCollection.value.headers = clone(
props.editingProperties.collection.headers
)
} else {
editableCollection.value = {
body: {
contentType: null,
body: null,
},
headers: [],
auth: {
authType: "inherit",
authActive: false,
},
}
}
}
)
const saveEditedCollection = () => {
if (!props.editingProperties) return
const finalCollection = clone(editableCollection.value)
delete finalCollection.body
const collection = {
path: props.editingProperties.path,
collection: {
...props.editingProperties.collection,
...finalCollection,
},
isRootCollection: props.editingProperties.isRootCollection,
}
emit("set-collection-properties", collection)
}
const hideModal = () => {
emit("hide-modal")
}
</script>

View File

@@ -74,6 +74,7 @@ import { Picked } from "~/helpers/types/HoppPicked"
import { useI18n } from "@composables/i18n"
import { useToast } from "@composables/toast"
import {
cascadeParentCollectionForHeaderAuth,
editGraphqlRequest,
editRESTRequest,
saveGraphqlRequestAs,
@@ -239,6 +240,16 @@ const saveRequestAs = async () => {
},
}
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
`${picked.value.collectionIndex}`,
"rest"
)
RESTTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
platform.analytics?.logEvent({
type: "HOPP_SAVE_REQUEST",
createdNow: true,
@@ -266,6 +277,16 @@ const saveRequestAs = async () => {
},
}
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
picked.value.folderPath,
"rest"
)
RESTTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
platform.analytics?.logEvent({
type: "HOPP_SAVE_REQUEST",
createdNow: true,
@@ -294,6 +315,16 @@ const saveRequestAs = async () => {
},
}
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
picked.value.folderPath,
"rest"
)
RESTTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
platform.analytics?.logEvent({
type: "HOPP_SAVE_REQUEST",
createdNow: false,
@@ -378,6 +409,16 @@ const saveRequestAs = async () => {
workspaceType: "team",
})
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
picked.value.folderPath,
"graphql"
)
GQLTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
requestSaved()
} else if (picked.value.pickedType === "gql-my-folder") {
// TODO: Check for GQL request ?
@@ -393,6 +434,16 @@ const saveRequestAs = async () => {
workspaceType: "team",
})
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
picked.value.folderPath,
"graphql"
)
GQLTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
requestSaved()
} else if (picked.value.pickedType === "gql-my-collection") {
// TODO: Check for GQL request ?
@@ -408,6 +459,16 @@ const saveRequestAs = async () => {
workspaceType: "team",
})
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
`${picked.value.collectionIndex}`,
"graphql"
)
GQLTabs.currentActiveTab.value.document.inheritedProperties = {
auth,
headers,
}
requestSaved()
}
}

View File

@@ -88,6 +88,13 @@
collection: node.data.data.data,
})
"
@edit-properties="
node.data.type === 'collections' &&
emit('edit-properties', {
collectionIndex: node.id,
collection: node.data.data.data,
})
"
@export-data="
node.data.type === 'collections' &&
emit('export-data', node.data.data.data)
@@ -159,6 +166,13 @@
folder: node.data.data.data,
})
"
@edit-properties="
node.data.type === 'folders' &&
emit('edit-properties', {
collectionIndex: node.id,
collection: node.data.data.data,
})
"
@export-data="
node.data.type === 'folders' &&
emit('export-data', node.data.data.data)
@@ -238,6 +252,7 @@
selectRequest({
request: node.data.data.data.request,
requestIndex: node.data.data.data.id,
folderPath: getPath(node.id),
})
"
@share-request="
@@ -351,10 +366,7 @@ import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import { TeamCollection } from "~/helpers/teams/TeamCollection"
import { TeamRequest } from "~/helpers/teams/TeamRequest"
import {
ChildrenResult,
SmartTreeAdapter,
} from "@hoppscotch/ui/dist/helpers/treeAdapter"
import { ChildrenResult, SmartTreeAdapter } from "@hoppscotch/ui/helpers"
import { cloneDeep } from "lodash-es"
import { HoppRESTRequest } from "@hoppscotch/data"
import { pipe } from "fp-ts/function"
@@ -452,6 +464,13 @@ const emit = defineEmits<{
folder: TeamCollection
}
): void
(
event: "edit-properties",
payload: {
collectionIndex: string
collection: TeamCollection
}
): void
(
event: "edit-request",
payload: {
@@ -482,7 +501,7 @@ const emit = defineEmits<{
request: HoppRESTRequest
requestIndex: string
isActive: boolean
folderPath?: string | undefined
folderPath: string
}
): void
(
@@ -530,6 +549,12 @@ const emit = defineEmits<{
(event: "display-modal-import-export"): void
}>()
const getPath = (path: string) => {
const pathArray = path.split("/")
pathArray.pop()
return pathArray.join("/")
}
const teamCollectionsList = toRef(props, "teamCollectionList")
const hasNoTeamAccess = computed(
@@ -586,6 +611,7 @@ const isActiveRequest = (requestID: string) => {
const selectRequest = (data: {
request: HoppRESTRequest
requestIndex: string
folderPath: string | null
}) => {
const { request, requestIndex } = data
if (props.saveRequest) {
@@ -598,6 +624,7 @@ const selectRequest = (data: {
request: request,
requestIndex: requestIndex,
isActive: isActiveRequest(requestIndex),
folderPath: data.folderPath,
})
}
}

View File

@@ -32,58 +32,58 @@
</HoppSmartModal>
</template>
<script lang="ts">
import { defineComponent } from "vue"
<script setup lang="ts">
import { ref } from "vue"
import { useToast } from "@composables/toast"
import { useI18n } from "@composables/i18n"
import { HoppGQLRequest, makeCollection } from "@hoppscotch/data"
import { makeCollection } from "@hoppscotch/data"
import { addGraphqlCollection } from "~/newstore/collections"
import { platform } from "~/platform"
export default defineComponent({
props: {
show: Boolean,
},
emits: ["hide-modal"],
setup() {
return {
toast: useToast(),
t: useI18n(),
}
},
data() {
return {
name: null as string | null,
}
},
methods: {
addNewCollection() {
if (!this.name) {
this.toast.error(`${this.t("collection.invalid_name")}`)
return
}
const t = useI18n()
const toast = useToast()
addGraphqlCollection(
makeCollection<HoppGQLRequest>({
name: this.name,
folders: [],
requests: [],
})
)
defineProps<{
show: boolean
}>()
this.hideModal()
const emit = defineEmits<{
(e: "hide-modal"): void
}>()
platform.analytics?.logEvent({
type: "HOPP_CREATE_COLLECTION",
isRootCollection: true,
platform: "gql",
workspaceType: "personal",
})
},
hideModal() {
this.name = null
this.$emit("hide-modal")
},
},
})
const name = ref<string | null>(null)
const addNewCollection = () => {
if (!name.value) {
toast.error(`${t("collection.invalid_name")}`)
return
}
addGraphqlCollection(
makeCollection({
name: name.value,
folders: [],
requests: [],
auth: {
authType: "inherit",
authActive: true,
},
headers: [],
})
)
hideModal()
platform.analytics?.logEvent({
type: "HOPP_CREATE_COLLECTION",
isRootCollection: true,
platform: "gql",
workspaceType: "personal",
})
}
const hideModal = () => {
name.value = null
emit("hide-modal")
}
</script>

View File

@@ -3,7 +3,7 @@
v-if="show"
dialog
:title="t('folder.new')"
@close="$emit('hide-modal')"
@close="hideModal"
>
<template #body>
<HoppSmartInput
@@ -32,47 +32,49 @@
</HoppSmartModal>
</template>
<script lang="ts">
<script setup lang="ts">
import { ref } from "vue"
import { useToast } from "@composables/toast"
import { useI18n } from "@composables/i18n"
import { defineComponent } from "vue"
export default defineComponent({
props: {
show: Boolean,
folderPath: { type: String, default: null },
collectionIndex: { type: Number, default: null },
},
emits: ["hide-modal", "add-folder"],
setup() {
return {
toast: useToast(),
t: useI18n(),
const t = useI18n()
const toast = useToast()
const props = defineProps<{
show: boolean
folderPath?: string
collectionIndex: number
}>()
const emit = defineEmits<{
(e: "hide-modal"): void
(
e: "add-folder",
v: {
name: string
path: string | undefined
}
},
data() {
return {
name: null,
}
},
methods: {
addFolder() {
if (!this.name) {
this.toast.error(`${this.t("folder.name_length_insufficient")}`)
return
}
): void
}>()
this.$emit("add-folder", {
name: this.name,
path: this.folderPath || `${this.collectionIndex}`,
})
const name = ref<string | null>(null)
this.hideModal()
},
hideModal() {
this.name = null
this.$emit("hide-modal")
},
},
})
const addFolder = () => {
if (!name.value) {
toast.error(`${t("folder.name_length_insufficient")}`)
return
}
emit("add-folder", {
name: name.value,
path: props.folderPath || `${props.collectionIndex}`,
})
hideModal()
}
const hideModal = () => {
name.value = null
emit("hide-modal")
}
</script>

View File

@@ -128,6 +128,21 @@
}
"
/>
<HoppSmartItem
ref="propertiesAction"
:icon="IconSettings2"
:label="t('action.properties')"
:shortcut="['P']"
@click="
() => {
emit('edit-properties', {
collectionIndex: String(collectionIndex),
collection: collection,
})
hide()
}
"
/>
</div>
</template>
</tippy>
@@ -155,7 +170,15 @@
@edit-folder="$emit('edit-folder', $event)"
@edit-request="$emit('edit-request', $event)"
@duplicate-request="$emit('duplicate-request', $event)"
@edit-properties="
$emit('edit-properties', {
collectionIndex: `${collectionIndex}/${String(index)}`,
collection: folder,
})
"
@select="$emit('select', $event)"
@select-request="$emit('select-request', $event)"
@drop-request="$emit('drop-request', $event)"
/>
<CollectionsGraphqlRequest
v-for="(request, index) in collection.requests"
@@ -171,6 +194,7 @@
@edit-request="$emit('edit-request', $event)"
@duplicate-request="$emit('duplicate-request', $event)"
@select="$emit('select', $event)"
@select-request="$emit('select-request', $event)"
/>
<HoppSmartPlaceholder
v-if="
@@ -214,25 +238,24 @@ import IconFolderPlus from "~icons/lucide/folder-plus"
import IconMoreVertical from "~icons/lucide/more-vertical"
import IconEdit from "~icons/lucide/edit"
import IconTrash2 from "~icons/lucide/trash-2"
import IconSettings2 from "~icons/lucide/settings-2"
import { useToast } from "@composables/toast"
import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import {
removeGraphqlCollection,
moveGraphqlRequest,
} from "~/newstore/collections"
import { removeGraphqlCollection } from "~/newstore/collections"
import { Picked } from "~/helpers/types/HoppPicked"
import { useService } from "dioc/vue"
import { GQLTabService } from "~/services/tab/graphql"
import { HoppCollection } from "@hoppscotch/data"
const props = defineProps({
picked: { type: Object, default: null },
const props = defineProps<{
picked: Picked | null
// Whether the viewing context is related to picking (activates 'select' events)
saveRequest: { type: Boolean, default: false },
collectionIndex: { type: Number, default: null },
collection: { type: Object, default: () => ({}) },
isFiltered: Boolean,
})
saveRequest: boolean
collectionIndex: number | null
collection: HoppCollection
isFiltered: boolean
}>()
const colorMode = useColorMode()
const toast = useToast()
@@ -248,7 +271,23 @@ const emit = defineEmits<{
(e: "add-request", i: any): void
(e: "add-folder", i: any): void
(e: "edit-folder", i: any): void
(
e: "edit-properties",
payload: {
collectionIndex: string | null
collection: HoppCollection
}
): void
(e: "edit-collection"): void
(e: "select-request", i: any): void
(
e: "drop-request",
payload: {
folderPath: string
requestIndex: string
collectionIndex: number | null
}
): void
}>()
// Template refs
@@ -324,6 +363,10 @@ const dropEvent = ({ dataTransfer }: any) => {
dragging.value = !dragging.value
const folderPath = dataTransfer.getData("folderPath")
const requestIndex = dataTransfer.getData("requestIndex")
moveGraphqlRequest(folderPath, requestIndex, `${props.collectionIndex}`)
emit("drop-request", {
folderPath,
requestIndex,
collectionIndex: props.collectionIndex,
})
}
</script>

View File

@@ -37,13 +37,14 @@ import { ref, watch } from "vue"
import { editGraphqlCollection } from "~/newstore/collections"
import { useToast } from "@composables/toast"
import { useI18n } from "@composables/i18n"
import { HoppCollection } from "@hoppscotch/data"
const props = defineProps({
show: Boolean,
editingCollection: { type: Object, default: () => ({}) },
editingCollectionIndex: { type: Number, default: null },
editingCollectionName: { type: String, default: null },
})
const props = defineProps<{
show: boolean
editingCollectionIndex: number | null
editingCollection: HoppCollection | null
editingCollectionName: string
}>()
const emit = defineEmits<{
(e: "hide-modal"): void

View File

@@ -32,52 +32,47 @@
</HoppSmartModal>
</template>
<script lang="ts">
import { defineComponent } from "vue"
<script setup lang="ts">
import { ref, watch } from "vue"
import { useI18n } from "@composables/i18n"
import { useToast } from "@composables/toast"
import { editGraphqlFolder } from "~/newstore/collections"
export default defineComponent({
props: {
show: Boolean,
folder: { type: Object, default: () => ({}) },
folderPath: { type: String, default: null },
editingFolderName: { type: String, default: null },
},
emits: ["hide-modal"],
setup() {
return {
toast: useToast(),
t: useI18n(),
}
},
data() {
return {
name: "",
}
},
watch: {
editingFolderName(val) {
this.name = val
},
},
methods: {
editFolder() {
if (!this.name) {
this.toast.error(`${this.t("collection.invalid_name")}`)
return
}
editGraphqlFolder(this.folderPath, {
...(this.folder as any),
name: this.name,
})
this.hideModal()
},
hideModal() {
this.name = ""
this.$emit("hide-modal")
},
},
})
const t = useI18n()
const toast = useToast()
const props = defineProps<{
show: boolean
folderPath?: string
folder: any
editingFolderName: string
}>()
const emit = defineEmits(["hide-modal"])
const name = ref("")
watch(
() => props.editingFolderName,
(val) => {
name.value = val
}
)
const editFolder = () => {
if (!name.value) {
toast.error(`${t("collection.invalid_name")}`)
return
}
editGraphqlFolder(props.folderPath, {
...(props.folder as any),
name: name.value,
})
hideModal()
}
const hideModal = () => {
name.value = ""
emit("hide-modal")
}
</script>

View File

@@ -32,61 +32,55 @@
</HoppSmartModal>
</template>
<script lang="ts">
import { defineComponent, PropType } from "vue"
<script setup lang="ts">
import { ref, watch } from "vue"
import { useI18n } from "@composables/i18n"
import { useToast } from "@composables/toast"
import { HoppGQLRequest } from "@hoppscotch/data"
import { editGraphqlRequest } from "~/newstore/collections"
export default defineComponent({
props: {
show: Boolean,
folderPath: { type: String, default: null },
request: { type: Object as PropType<HoppGQLRequest>, default: () => ({}) },
requestIndex: { type: Number, default: null },
editingRequestName: { type: String, default: null },
},
emits: ["hide-modal"],
setup() {
return {
toast: useToast(),
t: useI18n(),
}
},
data() {
return {
requestUpdateData: {
name: null as any | null,
},
}
},
watch: {
editingRequestName(val) {
this.requestUpdateData.name = val
},
},
methods: {
saveRequest() {
if (!this.requestUpdateData.name) {
this.toast.error(`${this.t("collection.invalid_name")}`)
return
}
const t = useI18n()
const toast = useToast()
// TODO: Type safety goes brrrr. Proper typing plz
const requestUpdated = {
...this.$props.request,
name: this.$data.requestUpdateData.name || this.$props.request.name,
}
const props = defineProps<{
show: boolean
folderPath?: string
requestIndex: number | null
request: HoppGQLRequest | null
editingRequestName: string
}>()
editGraphqlRequest(this.folderPath, this.requestIndex, requestUpdated)
const emit = defineEmits<{
(e: "hide-modal"): void
}>()
this.hideModal()
},
hideModal() {
this.requestUpdateData = { name: null }
this.$emit("hide-modal")
},
},
})
const requestUpdateData = ref({ name: null as string | null })
watch(
() => props.editingRequestName,
(val) => {
requestUpdateData.value.name = val
}
)
const saveRequest = () => {
if (!requestUpdateData.value.name) {
toast.error(`${t("collection.invalid_name")}`)
return
}
const requestUpdated = {
...(props.request as any),
name: requestUpdateData.value.name || (props.request as any).name,
}
editGraphqlRequest(props.folderPath, props.requestIndex, requestUpdated)
hideModal()
}
const hideModal = () => {
requestUpdateData.value = { name: null }
emit("hide-modal")
}
</script>

View File

@@ -10,24 +10,25 @@
@dragend="dragging = false"
@contextmenu.prevent="options.tippy.show()"
>
<span
class="flex cursor-pointer items-center justify-center px-4"
<div
class="flex min-w-0 flex-1 items-center justify-center cursor-pointer"
@click="toggleShowChildren()"
>
<component
:is="collectionIcon"
class="svg-icons"
:class="{ 'text-accent': isSelected }"
/>
</span>
<span
class="flex min-w-0 flex-1 cursor-pointer py-2 pr-2 transition group-hover:text-secondaryDark"
@click="toggleShowChildren()"
>
<span class="truncate" :class="{ 'text-accent': isSelected }">
{{ folder.name ? folder.name : folder.title }}
<span class="pointer-events-none flex items-center justify-center px-4">
<component
:is="collectionIcon"
class="svg-icons"
:class="{ 'text-accent': isSelected }"
/>
</span>
</span>
<span
class="pointer-events-none flex min-w-0 flex-1 cursor-pointer py-2 pr-2 transition group-hover:text-secondaryDark"
>
<span class="truncate" :class="{ 'text-accent': isSelected }">
{{ folder.name ? folder.name : folder.title }}
</span>
</span>
</div>
<div class="flex">
<HoppButtonSecondary
v-tippy="{ theme: 'tooltip' }"
@@ -120,6 +121,21 @@
}
"
/>
<HoppSmartItem
ref="propertiesAction"
:icon="IconSettings2"
:label="t('action.properties')"
:shortcut="['P']"
@click="
() => {
emit('edit-properties', {
collectionIndex: collectionIndex,
collection: collection,
})
hide()
}
"
/>
</div>
</template>
</tippy>
@@ -148,7 +164,14 @@
@edit-folder="emit('edit-folder', $event)"
@edit-request="emit('edit-request', $event)"
@duplicate-request="emit('duplicate-request', $event)"
@edit-properties="
emit('edit-properties', {
collectionIndex: `${folderPath}/${String(subFolderIndex)}`,
collection: subFolder,
})
"
@select="emit('select', $event)"
@select-request="$emit('select-request', $event)"
/>
<CollectionsGraphqlRequest
v-for="(request, index) in folder.requests"
@@ -164,6 +187,7 @@
@edit-request="emit('edit-request', $event)"
@duplicate-request="emit('duplicate-request', $event)"
@select="emit('select', $event)"
@select-request="$emit('select-request', $event)"
/>
<HoppSmartPlaceholder
@@ -197,13 +221,16 @@ import IconMoreVertical from "~icons/lucide/more-vertical"
import IconCheckCircle from "~icons/lucide/check-circle"
import IconFolder from "~icons/lucide/folder"
import IconFolderOpen from "~icons/lucide/folder-open"
import IconSettings2 from "~icons/lucide/settings-2"
import { useToast } from "@composables/toast"
import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import { removeGraphqlFolder, moveGraphqlRequest } from "~/newstore/collections"
import { removeGraphqlFolder } from "~/newstore/collections"
import { computed, ref } from "vue"
import { useService } from "dioc/vue"
import { GQLTabService } from "~/services/tab/graphql"
import { Picked } from "~/helpers/types/HoppPicked"
import { HoppCollection } from "@hoppscotch/data"
const toast = useToast()
const t = useI18n()
@@ -211,16 +238,16 @@ const colorMode = useColorMode()
const tabs = useService(GQLTabService)
const props = defineProps({
picked: { type: Object, default: null },
const props = defineProps<{
picked: Picked
// Whether the request is in a selectable mode (activates 'select' event)
saveRequest: { type: Boolean, default: false },
folder: { type: Object, default: () => ({}) },
folderIndex: { type: Number, default: null },
collectionIndex: { type: Number, default: null },
folderPath: { type: String, default: null },
isFiltered: Boolean,
})
saveRequest: boolean
folder: HoppCollection
folderIndex: number
collectionIndex: number
folderPath: string
isFiltered: boolean
}>()
const emit = defineEmits([
"select",
@@ -229,6 +256,9 @@ const emit = defineEmits([
"add-folder",
"edit-folder",
"duplicate-request",
"edit-properties",
"select-request",
"drop-request",
])
// Template refs
@@ -303,6 +333,11 @@ const dropEvent = ({ dataTransfer }: any) => {
dragging.value = !dragging.value
const folderPath = dataTransfer.getData("folderPath")
const requestIndex = dataTransfer.getData("requestIndex")
moveGraphqlRequest(folderPath, requestIndex, props.folderPath)
emit("drop-request", {
folderPath,
requestIndex,
collectionIndex: props.folderPath,
})
}
</script>

View File

@@ -9,15 +9,16 @@
</template>
<script setup lang="ts">
import { HoppCollection } from "@hoppscotch/data"
import * as E from "fp-ts/Either"
import { ref } from "vue"
import { useI18n } from "~/composables/i18n"
import { useToast } from "~/composables/toast"
import { HoppCollection, HoppGQLRequest } from "@hoppscotch/data"
import { ImporterOrExporter } from "~/components/importExport/types"
import { FileSource } from "~/helpers/import-export/import/import-sources/FileSource"
import { GistSource } from "~/helpers/import-export/import/import-sources/GistSource"
import * as E from "fp-ts/Either"
import IconFolderPlus from "~icons/lucide/folder-plus"
import IconUser from "~icons/lucide/user"
import { initializeDownloadCollection } from "~/helpers/import-export/export"
@@ -25,13 +26,14 @@ import { useReadonlyStream } from "~/composables/stream"
import { platform } from "~/platform"
import {
appendGraphqlCollections,
graphqlCollections$,
setGraphqlCollections,
} from "~/newstore/collections"
import { hoppGqlCollectionsImporter } from "~/helpers/import-export/import/hoppGql"
import { gqlCollectionsExporter } from "~/helpers/import-export/export/gqlCollections"
import { gqlCollectionsGistExporter } from "~/helpers/import-export/export/gqlCollectionsGistExporter"
import { gistExporter } from "~/helpers/import-export/export/gist"
import { computed } from "vue"
import { hoppGQLImporter } from "~/helpers/import-export/import/hopp"
const t = useI18n()
const toast = useToast()
@@ -41,6 +43,10 @@ const currentUser = useReadonlyStream(
platform.auth.getCurrentUser()
)
const gqlCollections = useReadonlyStream(graphqlCollections$, [])
const isGqlCollectionGistExportInProgress = ref(false)
const GqlCollectionsHoppImporter: ImporterOrExporter = {
metadata: {
id: "import.from_json",
@@ -60,15 +66,20 @@ const GqlCollectionsHoppImporter: ImporterOrExporter = {
showImportFailedError()
return
}
const validatedCollection = await hoppGQLImporter(
JSON.stringify(res.right)
)()
handleImportToStore(res.right)
if (E.isRight(validatedCollection)) {
handleImportToStore(validatedCollection.right)
platform.analytics?.logEvent({
type: "HOPP_IMPORT_COLLECTION",
platform: "gql",
workspaceType: "personal",
importer: "json",
})
platform.analytics?.logEvent({
type: "HOPP_IMPORT_COLLECTION",
platform: "gql",
workspaceType: "personal",
importer: "json",
})
}
emit("hide-modal")
},
@@ -113,8 +124,6 @@ const GqlCollectionsGistImporter: ImporterOrExporter = {
}),
}
const gqlCollections = useReadonlyStream(graphqlCollections$, [])
const GqlCollectionsHoppExporter: ImporterOrExporter = {
metadata: {
id: "export.as_json",
@@ -153,29 +162,35 @@ const GqlCollectionsGistExporter: ImporterOrExporter = {
metadata: {
id: "export.as_gist",
name: "export.create_secret_gist",
title: !currentUser
? "export.require_github"
: // eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
currentUser.provider !== "github.com"
? `export.require_github`
: "export.create_secret_gist",
title:
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
currentUser?.value?.provider === "github.com"
? "export.create_secret_gist_tooltip_text"
: "export.require_github",
icon: IconUser,
disabled: !currentUser.value
? true
: currentUser.value.provider !== "github.com",
: currentUser.value?.provider !== "github.com",
applicableTo: ["personal-workspace"],
isLoading: isGqlCollectionGistExportInProgress,
},
action: async () => {
if (!gqlCollections.value.length) {
return toast.error(t("error.no_collections_to_export"))
}
if (!currentUser.value) {
toast.error(t("profile.no_permission"))
return
}
isGqlCollectionGistExportInProgress.value = true
const accessToken = currentUser.value?.accessToken
if (accessToken) {
const res = await gqlCollectionsGistExporter(
const res = await gistExporter(
JSON.stringify(gqlCollections.value),
accessToken
)
@@ -185,7 +200,7 @@ const GqlCollectionsGistExporter: ImporterOrExporter = {
return
}
toast.success(t("export.success"))
toast.success(t("export.secret_gist_success"))
platform.analytics?.logEvent({
type: "HOPP_EXPORT_COLLECTION",
@@ -193,8 +208,10 @@ const GqlCollectionsGistExporter: ImporterOrExporter = {
exporter: "gist",
})
window.open(res.right, "_blank")
platform.io.openExternalLink(res.right)
}
isGqlCollectionGistExportInProgress.value = false
},
}
@@ -214,11 +231,9 @@ const showImportFailedError = () => {
toast.error(t("import.failed"))
}
const handleImportToStore = async (
gqlCollections: HoppCollection<HoppGQLRequest>[]
) => {
setGraphqlCollections(gqlCollections)
toast.success(t("import.success"))
const handleImportToStore = async (gqlCollections: HoppCollection[]) => {
appendGraphqlCollections(gqlCollections)
toast.success(t("state.file_imported"))
}
const emit = defineEmits<{

View File

@@ -9,38 +9,41 @@
@dragend="dragging = false"
@contextmenu.prevent="options.tippy.show()"
>
<span
class="flex w-16 cursor-pointer items-center justify-center truncate px-2"
<div
class="pointer-events-auto flex min-w-0 flex-1 cursor-pointer items-center justify-center"
@click="selectRequest()"
>
<component
:is="isSelected ? IconCheckCircle : IconFile"
class="svg-icons"
:class="{ 'text-accent': isSelected }"
/>
</span>
<span
class="flex min-w-0 flex-1 cursor-pointer items-center py-2 pr-2 transition group-hover:text-secondaryDark"
@click="selectRequest()"
>
<span class="truncate" :class="{ 'text-accent': isSelected }">
{{ request.name }}
<span
class="pointer-events-none flex w-8 items-center justify-center truncate px-6"
>
<component
:is="isSelected ? IconCheckCircle : IconFile"
class="svg-icons"
:class="{ 'text-accent': isSelected }"
/>
</span>
<span
v-if="isActive"
v-tippy="{ theme: 'tooltip' }"
class="relative mx-3 flex h-1.5 w-1.5 flex-shrink-0"
:title="`${t('collection.request_in_use')}`"
class="pointer-events-none flex min-w-0 flex-1 items-center py-2 pr-2 transition group-hover:text-secondaryDark"
>
<span
class="absolute inline-flex h-full w-full flex-shrink-0 animate-ping rounded-full bg-green-500 opacity-75"
>
<span class="truncate" :class="{ 'text-accent': isSelected }">
{{ request.name }}
</span>
<span
class="relative inline-flex h-1.5 w-1.5 flex-shrink-0 rounded-full bg-green-500"
></span>
v-if="isActive"
v-tippy="{ theme: 'tooltip' }"
class="relative mx-3 flex h-1.5 w-1.5 flex-shrink-0"
:title="`${t('collection.request_in_use')}`"
>
<span
class="absolute inline-flex h-full w-full flex-shrink-0 animate-ping rounded-full bg-green-500 opacity-75"
>
</span>
<span
class="relative inline-flex h-1.5 w-1.5 flex-shrink-0 rounded-full bg-green-500"
></span>
</span>
</span>
</span>
</div>
<div class="flex">
<span>
<tippy
@@ -134,8 +137,7 @@ import IconTrash2 from "~icons/lucide/trash-2"
import { PropType, computed, ref } from "vue"
import { useI18n } from "@composables/i18n"
import { useToast } from "@composables/toast"
import { HoppGQLRequest, makeGQLRequest } from "@hoppscotch/data"
import { cloneDeep } from "lodash-es"
import { HoppGQLRequest } from "@hoppscotch/data"
import { removeGraphqlRequest } from "~/newstore/collections"
import { useService } from "dioc/vue"
import { GQLTabService } from "~/services/tab/graphql"
@@ -175,7 +177,12 @@ const isActive = computed(() => {
})
// TODO: Better types please
const emit = defineEmits(["select", "edit-request", "duplicate-request"])
const emit = defineEmits([
"select",
"edit-request",
"duplicate-request",
"select-request",
])
const dragging = ref(false)
const confirmRemove = ref(false)
@@ -199,36 +206,11 @@ const selectRequest = () => {
if (props.saveRequest) {
pick()
} else {
const possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "user-collection",
emit("select-request", {
request: props.request,
folderPath: props.folderPath,
requestIndex: props.requestIndex,
})
// Switch to that request if that request is open
if (possibleTab) {
tabs.setActiveTab(possibleTab.value.id)
return
}
tabs.createNewTab({
saveContext: {
originLocation: "user-collection",
folderPath: props.folderPath,
requestIndex: props.requestIndex,
},
request: cloneDeep(
makeGQLRequest({
name: props.request.name,
url: props.request.url,
query: props.request.query,
headers: props.request.headers,
variables: props.request.variables,
auth: props.request.auth,
})
),
isDirty: false,
})
}
}

View File

@@ -57,7 +57,10 @@
@edit-request="editRequest($event)"
@duplicate-request="duplicateRequest($event)"
@select-collection="$emit('use-collection', collection)"
@edit-properties="editProperties($event)"
@select="$emit('select', $event)"
@select-request="selectRequest($event)"
@drop-request="dropRequest($event)"
/>
</div>
<HoppSmartPlaceholder
@@ -142,19 +145,27 @@
v-if="showModalImportExport"
@hide-modal="displayModalImportExport(false)"
/>
<CollectionsProperties
:show="showModalEditProperties"
:editing-properties="editingProperties"
@hide-modal="displayModalEditProperties(false)"
@set-collection-properties="setCollectionProperties"
/>
</div>
</template>
<script lang="ts">
// TODO: TypeScript + Script Setup this :)
import { defineComponent } from "vue"
import { cloneDeep, clone } from "lodash-es"
<script setup lang="ts">
import { nextTick, ref } from "vue"
import { clone, cloneDeep } from "lodash-es"
import {
graphqlCollections$,
addGraphqlFolder,
saveGraphqlRequestAs,
cascadeParentCollectionForHeaderAuth,
editGraphqlCollection,
editGraphqlFolder,
moveGraphqlRequest,
} from "~/newstore/collections"
import IconPlus from "~icons/lucide/plus"
import IconHelpCircle from "~icons/lucide/help-circle"
import IconImport from "~icons/lucide/folder-down"
@@ -164,213 +175,448 @@ import { useColorMode } from "@composables/theming"
import { platform } from "~/platform"
import { useService } from "dioc/vue"
import { GQLTabService } from "~/services/tab/graphql"
import { computed } from "vue"
import {
HoppCollection,
HoppGQLRequest,
makeGQLRequest,
} from "@hoppscotch/data"
import { Picked } from "~/helpers/types/HoppPicked"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
import { updateInheritedPropertiesForAffectedRequests } from "~/helpers/collection/collection"
import { useToast } from "~/composables/toast"
import { getRequestsByPath } from "~/helpers/collection/request"
export default defineComponent({
props: {
// Whether to activate the ability to pick items (activates 'select' events)
saveRequest: { type: Boolean, default: false },
picked: { type: Object, default: null },
},
emits: ["select", "use-collection"],
setup() {
const collections = useReadonlyStream(graphqlCollections$, [], "deep")
const colorMode = useColorMode()
const t = useI18n()
const tabs = useService(GQLTabService)
const t = useI18n()
const toast = useToast()
return {
collections,
colorMode,
t,
tabs,
IconPlus,
IconHelpCircle,
IconImport,
}
},
data() {
return {
showModalAdd: false,
showModalEdit: false,
showModalImportExport: false,
showModalAddRequest: false,
showModalAddFolder: false,
showModalEditFolder: false,
showModalEditRequest: false,
editingCollection: undefined,
editingCollectionIndex: undefined,
editingFolder: undefined,
editingFolderName: undefined,
editingFolderIndex: undefined,
editingFolderPath: undefined,
editingRequest: undefined,
editingRequestIndex: undefined,
filterText: "",
}
},
computed: {
filteredCollections() {
const collections = clone(this.collections)
defineProps<{
// Whether to activate the ability to pick items (activates 'select' events)
saveRequest: boolean
picked: Picked
}>()
if (!this.filterText) return collections
const collections = useReadonlyStream(graphqlCollections$, [], "deep")
const colorMode = useColorMode()
const tabs = useService(GQLTabService)
const filterText = this.filterText.toLowerCase()
const filteredCollections = []
const showModalAdd = ref(false)
const showModalEdit = ref(false)
const showModalImportExport = ref(false)
const showModalAddRequest = ref(false)
const showModalAddFolder = ref(false)
const showModalEditFolder = ref(false)
const showModalEditRequest = ref(false)
const showModalEditProperties = ref(false)
for (const collection of collections) {
const filteredRequests = []
const filteredFolders = []
for (const request of collection.requests) {
if (request.name.toLowerCase().includes(filterText))
filteredRequests.push(request)
}
for (const folder of collection.folders) {
const filteredFolderRequests = []
for (const request of folder.requests) {
if (request.name.toLowerCase().includes(filterText))
filteredFolderRequests.push(request)
}
if (filteredFolderRequests.length > 0) {
const filteredFolder = Object.assign({}, folder)
filteredFolder.requests = filteredFolderRequests
filteredFolders.push(filteredFolder)
}
}
const editingCollection = ref<HoppCollection | null>(null)
const editingCollectionIndex = ref<number | null>(null)
const editingFolder = ref<HoppCollection | null>(null)
const editingFolderName = ref("")
const editingFolderIndex = ref<number | null>(null)
const editingFolderPath = ref("")
const editingRequest = ref<HoppGQLRequest | null>(null)
const editingRequestIndex = ref<number | null>(null)
if (filteredRequests.length + filteredFolders.length > 0) {
const filteredCollection = Object.assign({}, collection)
filteredCollection.requests = filteredRequests
filteredCollection.folders = filteredFolders
filteredCollections.push(filteredCollection)
}
}
return filteredCollections
},
},
methods: {
displayModalAdd(shouldDisplay) {
this.showModalAdd = shouldDisplay
},
displayModalEdit(shouldDisplay) {
this.showModalEdit = shouldDisplay
if (!shouldDisplay) this.resetSelectedData()
},
displayModalImportExport(shouldDisplay) {
this.showModalImportExport = shouldDisplay
},
displayModalAddRequest(shouldDisplay) {
this.showModalAddRequest = shouldDisplay
if (!shouldDisplay) this.resetSelectedData()
},
displayModalAddFolder(shouldDisplay) {
this.showModalAddFolder = shouldDisplay
if (!shouldDisplay) this.resetSelectedData()
},
displayModalEditFolder(shouldDisplay) {
this.showModalEditFolder = shouldDisplay
if (!shouldDisplay) this.resetSelectedData()
},
displayModalEditRequest(shouldDisplay) {
this.showModalEditRequest = shouldDisplay
if (!shouldDisplay) this.resetSelectedData()
},
editCollection(collection, collectionIndex) {
this.$data.editingCollection = collection
this.$data.editingCollectionIndex = collectionIndex
this.displayModalEdit(true)
},
onAddRequest({ name, path, index }) {
const newRequest = {
...this.tabs.currentActiveTab.value.document.request,
name,
}
saveGraphqlRequestAs(path, newRequest)
this.tabs.createNewTab({
saveContext: {
originLocation: "user-collection",
folderPath: path,
requestIndex: index,
},
request: newRequest,
isDirty: false,
})
platform.analytics?.logEvent({
type: "HOPP_SAVE_REQUEST",
platform: "gql",
createdNow: true,
workspaceType: "personal",
})
this.displayModalAddRequest(false)
},
addRequest(payload) {
const { path } = payload
this.$data.editingFolderPath = path
this.displayModalAddRequest(true)
},
onAddFolder({ name, path }) {
addGraphqlFolder(name, path)
platform.analytics?.logEvent({
type: "HOPP_CREATE_COLLECTION",
isRootCollection: false,
platform: "gql",
workspaceType: "personal",
})
this.displayModalAddFolder(false)
},
addFolder(payload) {
const { path } = payload
this.$data.editingFolderPath = path
this.displayModalAddFolder(true)
},
editFolder(payload) {
const { folder, folderPath } = payload
this.editingFolder = folder
this.editingFolderPath = folderPath
this.displayModalEditFolder(true)
},
editRequest(payload) {
const {
collectionIndex,
folderIndex,
folderName,
request,
requestIndex,
folderPath,
} = payload
this.$data.editingFolderPath = folderPath
this.$data.editingCollectionIndex = collectionIndex
this.$data.editingFolderIndex = folderIndex
this.$data.editingFolderName = folderName
this.$data.editingRequest = request
this.$data.editingRequestIndex = requestIndex
this.displayModalEditRequest(true)
},
resetSelectedData() {
this.$data.editingCollection = undefined
this.$data.editingCollectionIndex = undefined
this.$data.editingFolder = undefined
this.$data.editingFolderIndex = undefined
this.$data.editingRequest = undefined
this.$data.editingRequestIndex = undefined
},
duplicateRequest({ folderPath, request }) {
saveGraphqlRequestAs(folderPath, {
...cloneDeep(request),
name: `${request.name} - ${this.t("action.duplicate")}`,
})
},
},
const editingProperties = ref<{
collection: HoppCollection | null
isRootCollection: boolean
path: string
inheritedProperties?: HoppInheritedProperty
}>({
collection: null,
isRootCollection: false,
path: "",
inheritedProperties: undefined,
})
const filterText = ref("")
const filteredCollections = computed(() => {
const collectionsClone = clone(collections.value)
if (!filterText.value) return collectionsClone
const filterTextLower = filterText.value.toLowerCase()
const filteredCollections = []
for (const collection of collectionsClone) {
const filteredRequests = []
const filteredFolders = []
for (const request of collection.requests) {
if (request.name.toLowerCase().includes(filterTextLower))
filteredRequests.push(request)
}
for (const folder of collection.folders) {
const filteredFolderRequests = []
for (const request of folder.requests) {
if (request.name.toLowerCase().includes(filterTextLower))
filteredFolderRequests.push(request)
}
if (filteredFolderRequests.length > 0) {
const filteredFolder = { ...folder }
filteredFolder.requests = filteredFolderRequests
filteredFolders.push(filteredFolder)
}
}
if (filteredRequests.length + filteredFolders.length > 0) {
const filteredCollection = { ...collection }
filteredCollection.requests = filteredRequests
filteredCollection.folders = filteredFolders
filteredCollections.push(filteredCollection)
}
}
return filteredCollections
})
const displayModalAdd = (shouldDisplay: boolean) => {
showModalAdd.value = shouldDisplay
}
const displayModalEdit = (shouldDisplay: boolean) => {
showModalEdit.value = shouldDisplay
if (!shouldDisplay) resetSelectedData()
}
const displayModalImportExport = (shouldDisplay: boolean) => {
showModalImportExport.value = shouldDisplay
}
const displayModalAddRequest = (shouldDisplay: boolean) => {
showModalAddRequest.value = shouldDisplay
if (!shouldDisplay) resetSelectedData()
}
const displayModalAddFolder = (shouldDisplay: boolean) => {
showModalAddFolder.value = shouldDisplay
if (!shouldDisplay) resetSelectedData()
}
const displayModalEditFolder = (shouldDisplay: boolean) => {
showModalEditFolder.value = shouldDisplay
if (!shouldDisplay) resetSelectedData()
}
const displayModalEditRequest = (shouldDisplay: boolean) => {
showModalEditRequest.value = shouldDisplay
if (!shouldDisplay) resetSelectedData()
}
const displayModalEditProperties = (show: boolean) => {
showModalEditProperties.value = show
if (!show) resetSelectedData()
}
const editCollection = (
collection: HoppCollection,
collectionIndex: number
) => {
editingCollection.value = collection
editingCollectionIndex.value = collectionIndex
displayModalEdit(true)
}
const onAddRequest = ({
name,
path,
index,
}: {
name: string
path: string
index: number
}) => {
const newRequest = {
...tabs.currentActiveTab.value.document.request,
name,
}
saveGraphqlRequestAs(path, newRequest)
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
path,
"graphql"
)
tabs.createNewTab({
saveContext: {
originLocation: "user-collection",
folderPath: path,
requestIndex: index,
},
request: newRequest,
isDirty: false,
inheritedProperties: {
auth,
headers,
},
})
platform.analytics?.logEvent({
type: "HOPP_SAVE_REQUEST",
platform: "gql",
createdNow: true,
workspaceType: "personal",
})
displayModalAddRequest(false)
}
const addRequest = (payload: { path: string }) => {
const { path } = payload
editingFolderPath.value = path
displayModalAddRequest(true)
}
const onAddFolder = ({
name,
path,
}: {
name: string
path: string | undefined
}) => {
addGraphqlFolder(name, path ?? "0")
platform.analytics?.logEvent({
type: "HOPP_CREATE_COLLECTION",
isRootCollection: false,
platform: "gql",
workspaceType: "personal",
})
displayModalAddFolder(false)
}
const addFolder = (payload: { path: string }) => {
const { path } = payload
editingFolderPath.value = path
displayModalAddFolder(true)
}
const editFolder = (payload: {
folder: HoppCollection
folderPath: string
}) => {
const { folder, folderPath } = payload
editingFolder.value = folder
editingFolderPath.value = folderPath
displayModalEditFolder(true)
}
const editRequest = (payload: {
collectionIndex: number
folderIndex: number
folderName: string
request: HoppGQLRequest
requestIndex: number
folderPath: string
}) => {
const {
collectionIndex,
folderIndex,
folderName,
request,
requestIndex,
folderPath,
} = payload
editingFolderPath.value = folderPath
editingCollectionIndex.value = collectionIndex
editingFolderIndex.value = folderIndex
editingFolderName.value = folderName
editingRequest.value = request
editingRequestIndex.value = requestIndex
displayModalEditRequest(true)
}
const duplicateRequest = ({
folderPath,
request,
}: {
folderPath: string
request: HoppGQLRequest
}) => {
saveGraphqlRequestAs(folderPath, {
...cloneDeep(request),
name: `${request.name} - ${t("action.duplicate")}`,
})
}
const selectRequest = ({
request,
folderPath,
requestIndex,
}: {
request: HoppGQLRequest
folderPath: string
requestIndex: number
}) => {
const possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "user-collection",
folderPath: folderPath,
requestIndex: requestIndex,
})
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
folderPath,
"graphql"
)
// Switch to that request if that request is open
if (possibleTab) {
tabs.setActiveTab(possibleTab.value.id)
return
}
tabs.createNewTab({
saveContext: {
originLocation: "user-collection",
folderPath: folderPath,
requestIndex: requestIndex,
},
request: cloneDeep(
makeGQLRequest({
name: request.name,
url: request.url,
query: request.query,
headers: request.headers,
variables: request.variables,
auth: request.auth,
})
),
isDirty: false,
inheritedProperties: {
auth,
headers,
},
})
}
const dropRequest = ({
folderPath,
requestIndex,
collectionIndex,
}: {
folderPath: string
requestIndex: number
collectionIndex: number
}) => {
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
`${collectionIndex}`,
"graphql"
)
const possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "user-collection",
folderPath,
requestIndex: Number(requestIndex),
})
if (possibleTab) {
possibleTab.value.document.saveContext = {
originLocation: "user-collection",
folderPath: `${collectionIndex}`,
requestIndex: getRequestsByPath(collections.value, `${collectionIndex}`)
.length,
}
possibleTab.value.document.inheritedProperties = {
auth,
headers,
}
}
moveGraphqlRequest(folderPath, requestIndex, `${collectionIndex}`)
toast.success(`${t("request.moved")}`)
}
/**
* Checks if the collection is already in the root
* @param id - path of the collection
* @returns boolean - true if the collection is already in the root
*/
const isAlreadyInRoot = (id: string) => {
const indexPath = id.split("/")
return indexPath.length === 1
}
const editProperties = ({
collectionIndex,
collection,
}: {
collectionIndex: string | null
collection: HoppCollection | null
}) => {
if (collectionIndex === null || collection === null) return
const parentIndex = collectionIndex.split("/").slice(0, -1).join("/") // remove last folder to get parent folder
let inheritedProperties = {}
if (parentIndex) {
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
parentIndex,
"graphql"
)
inheritedProperties = {
auth,
headers,
} as HoppInheritedProperty
}
editingProperties.value = {
collection,
isRootCollection: isAlreadyInRoot(collectionIndex),
path: collectionIndex,
inheritedProperties,
}
displayModalEditProperties(true)
}
const setCollectionProperties = (newCollection: {
collection: HoppCollection
path: string
isRootCollection: boolean
}) => {
const { collection, path, isRootCollection } = newCollection
if (isRootCollection) {
editGraphqlCollection(parseInt(path), collection)
} else {
editGraphqlFolder(path, collection)
}
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
path,
"graphql"
)
nextTick(() => {
updateInheritedPropertiesForAffectedRequests(
path,
{
auth,
headers,
},
"graphql"
)
})
displayModalEditProperties(false)
}
const resetSelectedData = () => {
editingCollection.value = null
editingCollectionIndex.value = null
editingFolder.value = null
editingFolderIndex.value = null
editingRequest.value = null
editingRequestIndex.value = null
}
</script>

View File

@@ -38,6 +38,7 @@
@add-request="addRequest"
@edit-collection="editCollection"
@edit-folder="editFolder"
@edit-properties="editProperties"
@export-data="exportData"
@remove-collection="removeCollection"
@remove-folder="removeFolder"
@@ -69,6 +70,7 @@
@add-folder="addFolder"
@edit-collection="editCollection"
@edit-folder="editFolder"
@edit-properties="editProperties"
@export-data="exportData"
@remove-collection="removeCollection"
@remove-folder="removeFolder"
@@ -151,6 +153,12 @@
:show="showTeamModalAdd"
@hide-modal="displayTeamModalAdd(false)"
/>
<CollectionsProperties
:show="showModalEditProperties"
:editing-properties="editingProperties"
@hide-modal="displayModalEditProperties(false)"
@set-collection-properties="setCollectionProperties"
/>
</div>
</template>
@@ -181,10 +189,13 @@ import {
moveRESTFolder,
navigateToFolderWithIndexPath,
restCollectionStore,
cascadeParentCollectionForHeaderAuth,
} from "~/newstore/collections"
import TeamCollectionAdapter from "~/helpers/teams/TeamCollectionAdapter"
import {
HoppCollection,
HoppRESTAuth,
HoppRESTHeaders,
HoppRESTRequest,
makeCollection,
} from "@hoppscotch/data"
@@ -193,10 +204,10 @@ import { GQLError } from "~/helpers/backend/GQLClient"
import {
createNewRootCollection,
createChildCollection,
renameCollection,
deleteCollection,
moveRESTTeamCollection,
updateOrderRESTTeamCollection,
updateTeamCollection,
} from "~/helpers/backend/mutations/TeamCollection"
import {
updateTeamRequest,
@@ -220,6 +231,7 @@ import {
getFoldersByPath,
resolveSaveContextOnCollectionReorder,
updateSaveContextForAffectedRequests,
updateInheritedPropertiesForAffectedRequests,
resetTeamRequestsContext,
} from "~/helpers/collection/collection"
import { currentReorderingStatus$ } from "~/newstore/reordering"
@@ -227,6 +239,7 @@ import { defineActionHandler, invokeAction } from "~/helpers/actions"
import { WorkspaceService } from "~/services/workspace.service"
import { useService } from "dioc/vue"
import { RESTTabService } from "~/services/tab/rest"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const t = useI18n()
const toast = useToast()
@@ -266,15 +279,11 @@ const collectionsType = ref<CollectionType>({
})
// Collection Data
const editingCollection = ref<
HoppCollection<HoppRESTRequest> | TeamCollection | null
>(null)
const editingCollection = ref<HoppCollection | TeamCollection | null>(null)
const editingCollectionName = ref<string | null>(null)
const editingCollectionIndex = ref<number | null>(null)
const editingCollectionID = ref<string | null>(null)
const editingFolder = ref<
HoppCollection<HoppRESTRequest> | TeamCollection | null
>(null)
const editingFolder = ref<HoppCollection | TeamCollection | null>(null)
const editingFolderName = ref<string | null>(null)
const editingFolderPath = ref<string | null>(null)
const editingRequest = ref<HoppRESTRequest | null>(null)
@@ -282,6 +291,18 @@ const editingRequestName = ref("")
const editingRequestIndex = ref<number | null>(null)
const editingRequestID = ref<string | null>(null)
const editingProperties = ref<{
collection: Omit<HoppCollection, "v"> | TeamCollection | null
isRootCollection: boolean
path: string
inheritedProperties?: HoppInheritedProperty
}>({
collection: null,
isRootCollection: false,
path: "",
inheritedProperties: undefined,
})
const confirmModalTitle = ref<string | null>(null)
const filterTexts = ref("")
@@ -520,6 +541,7 @@ const showModalEditCollection = ref(false)
const showModalEditFolder = ref(false)
const showModalEditRequest = ref(false)
const showModalImportExport = ref(false)
const showModalEditProperties = ref(false)
const showConfirmModal = ref(false)
const showTeamModalAdd = ref(false)
@@ -565,6 +587,12 @@ const displayModalImportExport = (show: boolean) => {
if (!show) resetSelectedData()
}
const displayModalEditProperties = (show: boolean) => {
showModalEditProperties.value = show
if (!show) resetSelectedData()
}
const displayConfirmModal = (show: boolean) => {
showConfirmModal.value = show
@@ -584,6 +612,11 @@ const addNewRootCollection = (name: string) => {
name,
folders: [],
requests: [],
headers: [],
auth: {
authType: "inherit",
authActive: false,
},
})
)
@@ -625,7 +658,7 @@ const addNewRootCollection = (name: string) => {
const addRequest = (payload: {
path: string
folder: HoppCollection<HoppRESTRequest> | TeamCollection
folder: HoppCollection | TeamCollection
}) => {
const { path, folder } = payload
editingFolder.value = folder
@@ -639,11 +672,13 @@ const onAddRequest = (requestName: string) => {
name: requestName,
}
const path = editingFolderPath.value
if (!path) return
if (collectionsType.value.type === "my-collections") {
const path = editingFolderPath.value
if (!path) return
const insertionIndex = saveRESTRequestAs(path, newRequest)
const { auth, headers } = cascadeParentCollectionForHeaderAuth(path, "rest")
tabs.createNewTab({
request: newRequest,
isDirty: false,
@@ -652,6 +687,10 @@ const onAddRequest = (requestName: string) => {
folderPath: path,
requestIndex: insertionIndex,
},
inheritedProperties: {
auth,
headers,
},
})
platform.analytics?.logEvent({
@@ -692,7 +731,8 @@ const onAddRequest = (requestName: string) => {
},
(result) => {
const { createRequestInCollection } = result
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(path)
tabs.createNewTab({
request: newRequest,
isDirty: false,
@@ -702,6 +742,10 @@ const onAddRequest = (requestName: string) => {
collectionID: createRequestInCollection.collection.id,
teamID: createRequestInCollection.collection.team.id,
},
inheritedProperties: {
auth,
headers,
},
})
modalLoadingState.value = false
@@ -714,7 +758,7 @@ const onAddRequest = (requestName: string) => {
const addFolder = (payload: {
path: string
folder: HoppCollection<HoppRESTRequest> | TeamCollection
folder: HoppCollection | TeamCollection
}) => {
const { path, folder } = payload
editingFolder.value = folder
@@ -773,15 +817,13 @@ const onAddFolder = (folderName: string) => {
const editCollection = (payload: {
collectionIndex: string
collection: HoppCollection<HoppRESTRequest> | TeamCollection
collection: HoppCollection | TeamCollection
}) => {
const { collectionIndex, collection } = payload
editingCollection.value = collection
if (collectionsType.value.type === "my-collections") {
editingCollectionIndex.value = parseInt(collectionIndex)
editingCollectionName.value = (
collection as HoppCollection<HoppRESTRequest>
).name
editingCollectionName.value = (collection as HoppCollection).name
} else {
editingCollectionName.value = (collection as TeamCollection).title
}
@@ -816,7 +858,7 @@ const updateEditingCollection = (newName: string) => {
modalLoadingState.value = true
pipe(
renameCollection(editingCollection.value.id, newName),
updateTeamCollection(editingCollection.value.id, undefined, newName),
TE.match(
(err: GQLError<string>) => {
toast.error(`${getErrorMessage(err)}`)
@@ -834,13 +876,13 @@ const updateEditingCollection = (newName: string) => {
const editFolder = (payload: {
folderPath: string | undefined
folder: HoppCollection<HoppRESTRequest> | TeamCollection
folder: HoppCollection | TeamCollection
}) => {
const { folderPath, folder } = payload
editingFolder.value = folder
if (collectionsType.value.type === "my-collections" && folderPath) {
editingFolderPath.value = folderPath
editingFolderName.value = (folder as HoppCollection<HoppRESTRequest>).name
editingFolderName.value = (folder as HoppCollection).name
} else {
editingFolderName.value = (folder as TeamCollection).title
}
@@ -854,7 +896,7 @@ const updateEditingFolder = (newName: string) => {
if (!editingFolderPath.value) return
editRESTFolder(editingFolderPath.value, {
...(editingFolder.value as HoppCollection<HoppRESTRequest>),
...(editingFolder.value as HoppCollection),
name: newName,
})
displayModalEditFolder(false)
@@ -865,7 +907,7 @@ const updateEditingFolder = (newName: string) => {
/* renameCollection can be used to rename both collections and folders
since folder is treated as collection in the BE. */
pipe(
renameCollection(editingFolder.value.id, newName),
updateTeamCollection(editingFolder.value.id, undefined, newName),
TE.match(
(err: GQLError<string>) => {
if (err.error === "team_coll/short_title") {
@@ -1279,16 +1321,18 @@ const selectPicked = (payload: Picked | null) => {
*/
const selectRequest = (selectedRequest: {
request: HoppRESTRequest
folderPath: string | undefined
folderPath: string
requestIndex: string
isActive: boolean
}) => {
const { request, folderPath, requestIndex } = selectedRequest
// If there is a request with this save context, switch into it
let possibleTab = null
if (collectionsType.value.type === "team-collections") {
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(folderPath)
possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "team-collection",
requestID: requestIndex,
@@ -1302,10 +1346,19 @@ const selectRequest = (selectedRequest: {
saveContext: {
originLocation: "team-collection",
requestID: requestIndex,
collectionID: folderPath,
},
inheritedProperties: {
auth,
headers,
},
})
}
} else {
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
folderPath,
"rest"
)
possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "user-collection",
requestIndex: parseInt(requestIndex),
@@ -1323,6 +1376,10 @@ const selectRequest = (selectedRequest: {
folderPath: folderPath!,
requestIndex: parseInt(requestIndex),
},
inheritedProperties: {
auth,
headers,
},
})
}
}
@@ -1349,16 +1406,17 @@ const dropRequest = (payload: {
}) => {
const { folderPath, requestIndex, destinationCollectionIndex } = payload
if (!requestIndex || !destinationCollectionIndex) return
if (!requestIndex || !destinationCollectionIndex || !folderPath) return
if (collectionsType.value.type === "my-collections" && folderPath) {
moveRESTRequest(
folderPath,
pathToLastIndex(requestIndex),
destinationCollectionIndex
let possibleTab = null
if (collectionsType.value.type === "my-collections") {
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
destinationCollectionIndex,
"rest"
)
const possibleTab = tabs.getTabRefWithSaveContext({
possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "user-collection",
folderPath,
requestIndex: pathToLastIndex(requestIndex),
@@ -1374,6 +1432,11 @@ const dropRequest = (payload: {
destinationCollectionIndex
).length,
}
possibleTab.value.document.inheritedProperties = {
auth,
headers,
}
}
// When it's drop it's basically getting deleted from last folder. reordering last folder accordingly
@@ -1383,6 +1446,11 @@ const dropRequest = (payload: {
folderPath,
length: getRequestsByPath(myCollections.value, folderPath).length,
})
moveRESTRequest(
folderPath,
pathToLastIndex(requestIndex),
destinationCollectionIndex
)
toast.success(`${t("request.moved")}`)
draggingToRoot.value = false
@@ -1406,8 +1474,12 @@ const dropRequest = (payload: {
requestMoveLoading.value.indexOf(requestIndex),
1
)
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(
destinationCollectionIndex
)
const possibleTab = tabs.getTabRefWithSaveContext({
possibleTab = tabs.getTabRefWithSaveContext({
originLocation: "team-collection",
requestID: requestIndex,
})
@@ -1417,6 +1489,10 @@ const dropRequest = (payload: {
originLocation: "team-collection",
requestID: requestIndex,
}
possibleTab.value.document.inheritedProperties = {
auth,
headers,
}
}
toast.success(`${t("request.moved")}`)
}
@@ -1537,6 +1613,22 @@ const dropCollection = (payload: {
`${destinationCollectionIndex}/${totalFoldersOfDestinationCollection}`
)
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
`${destinationCollectionIndex}/${totalFoldersOfDestinationCollection}`,
"rest"
)
const inheritedProperty = {
auth,
headers,
}
updateInheritedPropertiesForAffectedRequests(
`${destinationCollectionIndex}/${totalFoldersOfDestinationCollection}`,
inheritedProperty,
"rest"
)
draggingToRoot.value = false
toast.success(`${t("collection.moved")}`)
} else if (hasTeamWriteAccess.value) {
@@ -1562,6 +1654,22 @@ const dropCollection = (payload: {
collectionMoveLoading.value.indexOf(collectionIndexDragged),
1
)
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(
destinationCollectionIndex
)
const inheritedProperty = {
auth,
headers,
}
updateInheritedPropertiesForAffectedRequests(
`${destinationCollectionIndex}`,
inheritedProperty,
"rest"
)
}
)
)()
@@ -1846,13 +1954,11 @@ const initializeDownloadCollection = async (
* Triggered by the export button in the tippy menu
* @param collection - Collection or folder to be exported
*/
const exportData = async (
collection: HoppCollection<HoppRESTRequest> | TeamCollection
) => {
const exportData = async (collection: HoppCollection | TeamCollection) => {
if (collectionsType.value.type === "my-collections") {
const collectionJSON = JSON.stringify(collection)
const name = (collection as HoppCollection<HoppRESTRequest>).name
const name = (collection as HoppCollection).name
initializeDownloadCollection(collectionJSON, name)
} else {
@@ -1893,6 +1999,164 @@ const shareRequest = ({ request }: { request: HoppRESTRequest }) => {
}
}
const editProperties = (payload: {
collectionIndex: string
collection: HoppCollection | TeamCollection
}) => {
const { collection, collectionIndex } = payload
if (collectionsType.value.type === "my-collections") {
const parentIndex = collectionIndex.split("/").slice(0, -1).join("/") // remove last folder to get parent folder
let inheritedProperties = {
auth: {
parentID: "",
parentName: "",
inheritedAuth: {
authType: "inherit",
authActive: true,
},
},
headers: [
{
parentID: "",
parentName: "",
inheritedHeaders: [],
},
],
} as HoppInheritedProperty
if (parentIndex) {
const { auth, headers } = cascadeParentCollectionForHeaderAuth(
parentIndex,
"rest"
)
inheritedProperties = {
auth,
headers,
}
}
editingProperties.value = {
collection,
isRootCollection: isAlreadyInRoot(collectionIndex),
path: collectionIndex,
inheritedProperties,
}
} else if (hasTeamWriteAccess.value) {
const parentIndex = collectionIndex.split("/").slice(0, -1).join("/") // remove last folder to get parent folder
const data = (collection as TeamCollection).data
? JSON.parse((collection as TeamCollection).data ?? "")
: null
let inheritedProperties = undefined
let coll = {
id: collection.id,
name: (collection as TeamCollection).title,
auth: {
authType: "inherit",
authActive: true,
} as HoppRESTAuth,
headers: [] as HoppRESTHeaders,
folders: null,
requests: null,
}
if (parentIndex) {
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(parentIndex)
inheritedProperties = {
auth,
headers,
}
}
if (data) {
coll = {
...coll,
auth: data.auth,
headers: data.headers as HoppRESTHeaders,
}
}
editingProperties.value = {
collection: coll,
isRootCollection: isAlreadyInRoot(collectionIndex),
path: collectionIndex,
inheritedProperties,
}
}
displayModalEditProperties(true)
}
const setCollectionProperties = (newCollection: {
collection: HoppCollection
path: string
isRootCollection: boolean
}) => {
const { collection, path, isRootCollection } = newCollection
if (collectionsType.value.type === "my-collections") {
if (isRootCollection) {
editRESTCollection(parseInt(path), collection)
} else {
editRESTFolder(path, collection)
}
const { auth, headers } = cascadeParentCollectionForHeaderAuth(path, "rest")
nextTick(() => {
updateInheritedPropertiesForAffectedRequests(
path,
{
auth,
headers,
},
"rest"
)
})
toast.success(t("collection.properties_updated"))
} else if (hasTeamWriteAccess.value && collection.id) {
const data = {
auth: collection.auth,
headers: collection.headers,
}
pipe(
updateTeamCollection(collection.id, JSON.stringify(data), undefined),
TE.match(
(err: GQLError<string>) => {
toast.error(`${getErrorMessage(err)}`)
},
() => {
toast.success(t("collection.properties_updated"))
}
)
)()
//This is a hack to update the inherited properties of the requests if there an tab opened
// since it takes a little bit of time to update the collection tree
setTimeout(() => {
const { auth, headers } =
teamCollectionAdapter.cascadeParentCollectionForHeaderAuth(path)
updateInheritedPropertiesForAffectedRequests(
path,
{
auth,
headers,
},
"rest",
"team"
)
}, 200)
}
displayModalEditProperties(false)
}
const resolveConfirmModal = (title: string | null) => {
if (title === `${t("confirm.remove_collection")}`) onRemoveCollection()
else if (title === `${t("confirm.remove_request")}`) onRemoveRequest()

View File

@@ -9,15 +9,17 @@
</template>
<script setup lang="ts">
import { Environment } from "@hoppscotch/data"
import * as E from "fp-ts/Either"
import { ref } from "vue"
import { useI18n } from "~/composables/i18n"
import { useToast } from "~/composables/toast"
import { Environment } from "@hoppscotch/data"
import { ImporterOrExporter } from "~/components/importExport/types"
import { FileSource } from "~/helpers/import-export/import/import-sources/FileSource"
import { GistSource } from "~/helpers/import-export/import/import-sources/GistSource"
import { hoppEnvImporter } from "~/helpers/import-export/import/hoppEnv"
import * as E from "fp-ts/Either"
import {
appendEnvironments,
addGlobalEnvVariable,
@@ -39,7 +41,7 @@ import { initializeDownloadCollection } from "~/helpers/import-export/export"
import { computed } from "vue"
import { useReadonlyStream } from "~/composables/stream"
import { environmentsExporter } from "~/helpers/import-export/export/environments"
import { environmentsGistExporter } from "~/helpers/import-export/export/environmentsGistExport"
import { gistExporter } from "~/helpers/import-export/export/gist"
import { platform } from "~/platform"
const t = useI18n()
@@ -58,6 +60,8 @@ const currentUser = useReadonlyStream(
platform.auth.getCurrentUser()
)
const isEnvironmentGistExportInProgress = ref(false)
const isTeamEnvironment = computed(() => {
return props.environmentType === "TEAM_ENV"
})
@@ -262,43 +266,54 @@ const HoppEnvironmentsGistExporter: ImporterOrExporter = {
title:
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
currentUser?.provider === "github.com"
? "export.create_secret_gist"
currentUser?.value?.provider === "github.com"
? "export.create_secret_gist_tooltip_text"
: "export.require_github",
icon: IconUser,
disabled: !currentUser.value
? true
: currentUser.value.provider !== "github.com",
: currentUser.value?.provider !== "github.com",
applicableTo: ["personal-workspace", "team-workspace"],
isLoading: isEnvironmentGistExportInProgress,
},
action: async () => {
if (!environmentJson.value.length) {
return toast.error(t("error.no_environments_to_export"))
}
if (!currentUser.value) {
toast.error(t("profile.no_permission"))
return
}
isEnvironmentGistExportInProgress.value = true
const accessToken = currentUser.value?.accessToken
if (accessToken) {
const res = await environmentsGistExporter(
const res = await gistExporter(
JSON.stringify(environmentJson.value),
accessToken
accessToken,
"hoppscotch-environment.json"
)
if (E.isLeft(res)) {
toast.error(t("export.failed"))
isEnvironmentGistExportInProgress.value = false
return
}
toast.success(t("export.success"))
toast.success(t("export.secret_gist_success"))
platform.analytics?.logEvent({
type: "HOPP_EXPORT_ENVIRONMENT",
platform: "rest",
})
window.open(res.right, "_blank")
platform.io.openExternalLink(res.right)
}
isEnvironmentGistExportInProgress.value = false
},
}

View File

@@ -296,7 +296,7 @@ watch(
defineActionHandler("modals.environment.add", ({ envName, variableName }) => {
editingVariableName.value = envName
if (variableName) editingVariableValue.value = variableName
editingVariableValue.value = variableName ?? ""
displayModalNew(true)
})
</script>

View File

@@ -1,64 +1,71 @@
<template>
<HoppSmartModal
v-if="show"
dialog
:title="`${t('auth.login_to_hoppscotch')}`"
styles="sm:max-w-md"
@close="hideModal"
>
<template #body>
<div v-if="mode === 'sign-in'" class="flex flex-col space-y-2">
<HoppSmartItem
v-for="provider in allowedAuthProviders"
:key="provider.id"
:loading="provider.isLoading.value"
:icon="provider.icon"
:label="provider.label"
@click="provider.action"
/>
<hr v-if="additonalLoginItems.length > 0" />
<HoppSmartItem
v-for="loginItem in additonalLoginItems"
:key="loginItem.id"
:icon="loginItem.icon"
:label="loginItem.text(t)"
@click="doAdditionalLoginItemClickAction(loginItem)"
/>
</div>
<form
v-if="mode === 'email'"
class="flex flex-col space-y-2"
@submit.prevent="signInWithEmail"
>
<HoppSmartInput
v-model="form.email"
type="email"
placeholder=" "
:label="t('auth.email')"
input-styles="floating-input"
/>
<HoppButtonPrimary
:loading="signingInWithEmail"
type="submit"
:label="`${t('auth.send_magic_link')}`"
/>
</form>
<div v-if="mode === 'email-sent'" class="flex flex-col px-4">
<div class="flex max-w-md flex-col items-center justify-center">
<icon-lucide-inbox class="h-6 w-6 text-accent" />
<h3 class="my-2 text-center text-lg">
{{ t("auth.we_sent_magic_link") }}
</h3>
<p class="text-center">
{{
t("auth.we_sent_magic_link_description", { email: form.email })
}}
</p>
<template v-if="isLoadingAllowedAuthProviders">
<div class="flex justify-center">
<HoppSmartSpinner />
</div>
</div>
</template>
<template v-else>
<div v-if="mode === 'sign-in'" class="flex flex-col space-y-2">
<HoppSmartItem
v-for="provider in allowedAuthProviders"
:key="provider.id"
:loading="provider.isLoading.value"
:icon="provider.icon"
:label="provider.label"
@click="provider.action"
/>
<hr v-if="additonalLoginItems.length > 0" />
<HoppSmartItem
v-for="loginItem in additonalLoginItems"
:key="loginItem.id"
:icon="loginItem.icon"
:label="loginItem.text(t)"
@click="doAdditionalLoginItemClickAction(loginItem)"
/>
</div>
<form
v-if="mode === 'email'"
class="flex flex-col space-y-2"
@submit.prevent="signInWithEmail"
>
<HoppSmartInput
v-model="form.email"
type="email"
placeholder=" "
:label="t('auth.email')"
input-styles="floating-input"
/>
<HoppButtonPrimary
:loading="signingInWithEmail"
type="submit"
:label="`${t('auth.send_magic_link')}`"
/>
</form>
<div v-if="mode === 'email-sent'" class="flex flex-col px-4">
<div class="flex max-w-md flex-col items-center justify-center">
<icon-lucide-inbox class="h-6 w-6 text-accent" />
<h3 class="my-2 text-center text-lg">
{{ t("auth.we_sent_magic_link") }}
</h3>
<p class="text-center">
{{
t("auth.we_sent_magic_link_description", { email: form.email })
}}
</p>
</div>
</div>
</template>
</template>
<template #footer>
<div
@@ -109,7 +116,7 @@
</template>
<script setup lang="ts">
import { Ref, computed, onMounted, ref } from "vue"
import { Ref, onMounted, ref } from "vue"
import { useI18n } from "@composables/i18n"
import { useStreamSubscriber } from "@composables/stream"
@@ -127,9 +134,7 @@ import { useService } from "dioc/vue"
import { LoginItemDef } from "~/platform/auth"
import { PersistenceService } from "~/services/persistence"
defineProps<{
show: boolean
}>()
import * as E from "fp-ts/Either"
const emit = defineEmits<{
(e: "hide-modal"): void
@@ -145,6 +150,8 @@ const form = {
email: "",
}
const isLoadingAllowedAuthProviders = ref(true)
const signingInWithGoogle = ref(false)
const signingInWithGitHub = ref(false)
const signingInWithMicrosoft = ref(false)
@@ -162,21 +169,42 @@ type AuthProviderItem = {
isLoading: Ref<boolean>
}
const additonalLoginItems = computed(
() => platform.auth.additionalLoginItems ?? []
)
let allowedAuthProviders: AuthProviderItem[] = []
let additonalLoginItems: LoginItemDef[] = []
const doAdditionalLoginItemClickAction = async (item: LoginItemDef) => {
await item.onClick()
emit("hide-modal")
}
onMounted(() => {
onMounted(async () => {
const currentUser$ = platform.auth.getCurrentUserStream()
subscribeToStream(currentUser$, (user) => {
if (user) hideModal()
})
const res = await platform.auth.getAllowedAuthProviders()
if (E.isLeft(res)) {
toast.error(`${t("error.authproviders_load_error")}`)
isLoadingAllowedAuthProviders.value = false
return
}
// setup the normal auth providers
const enabledAuthProviders = authProvidersAvailable.filter((provider) =>
res.right.includes(provider.id)
)
allowedAuthProviders = enabledAuthProviders
// setup the additional login items
additonalLoginItems =
platform.auth.additionalLoginItems?.filter((item) =>
res.right.includes(item.id)
) ?? []
isLoadingAllowedAuthProviders.value = false
})
const showLoginSuccess = () => {
@@ -275,14 +303,7 @@ const signInWithEmail = async () => {
})
}
const hideModal = () => {
mode.value = "sign-in"
toast.clear()
emit("hide-modal")
}
const authProviders: AuthProviderItem[] = [
const authProvidersAvailable: AuthProviderItem[] = [
{
id: "GITHUB",
icon: IconGithub,
@@ -315,19 +336,10 @@ const authProviders: AuthProviderItem[] = [
},
]
// Do not format the `import.meta.env.VITE_ALLOWED_AUTH_PROVIDERS` call into multiple lines!
// prettier-ignore
const allowedAuthProvidersIDsString =
import.meta.env.VITE_ALLOWED_AUTH_PROVIDERS
const hideModal = () => {
mode.value = "sign-in"
toast.clear()
const allowedAuthProvidersIDs = allowedAuthProvidersIDsString
? allowedAuthProvidersIDsString.split(",")
: []
const allowedAuthProviders =
allowedAuthProvidersIDs.length > 0
? authProviders.filter((provider) =>
allowedAuthProvidersIDs.includes(provider.id)
)
: authProviders
emit("hide-modal")
}
</script>

View File

@@ -1,7 +1,12 @@
<template>
<div class="flex flex-1 flex-col">
<div
class="sticky top-sidebarPrimaryStickyFold z-10 flex items-center justify-between border-y border-dividerLight bg-primary pl-4"
class="sticky z-10 flex items-center justify-between border-y border-dividerLight bg-primary pl-4"
:class="[
isCollectionProperty
? 'top-propertiesPrimaryStickyFold'
: 'top-sidebarPrimaryStickyFold',
]"
>
<span class="flex items-center">
<label class="truncate font-semibold text-secondaryLight">
@@ -37,6 +42,18 @@
}
"
/>
<HoppSmartItem
v-if="!isRootCollection"
label="Inherit"
:icon="authName === 'Inherit' ? IconCircleDot : IconCircle"
:active="authName === 'Inherit'"
@click="
() => {
auth.authType = 'inherit'
hide()
}
"
/>
<HoppSmartItem
label="Basic Auth"
:icon="authName === 'Basic Auth' ? IconCircleDot : IconCircle"
@@ -149,6 +166,17 @@
/>
</div>
</div>
<div v-if="auth.authType === 'inherit'" class="p-4">
<span v-if="inheritedProperties?.auth">
Inherited
{{ getAuthName(inheritedProperties.auth.inheritedAuth.authType) }}
from Parent Collection {{ inheritedProperties?.auth.parentName }}
</span>
<span v-else>
Please save this request in any collection to inherit the
authorization
</span>
</div>
<div v-if="auth.authType === 'bearer'">
<div class="flex flex-1 border-b border-dividerLight">
<SmartEnvInput
@@ -203,6 +231,8 @@ import { pluckRef } from "@composables/ref"
import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import { useVModel } from "@vueuse/core"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
import { onMounted } from "vue"
const t = useI18n()
@@ -210,12 +240,24 @@ const colorMode = useColorMode()
const props = defineProps<{
modelValue: HoppGQLAuth
isCollectionProperty?: boolean
isRootCollection?: boolean
inheritedProperties?: HoppInheritedProperty
}>()
const emit = defineEmits<{
(e: "update:modelValue", value: HoppGQLAuth): void
}>()
onMounted(() => {
if (props.isRootCollection && auth.value.authType === "inherit") {
auth.value = {
authType: "none",
authActive: true,
}
}
})
const auth = useVModel(props, "modelValue", emit)
const AUTH_KEY_NAME = {
@@ -224,12 +266,20 @@ const AUTH_KEY_NAME = {
"oauth-2": "OAuth 2.0",
"api-key": "API key",
none: "None",
inherit: "Inherit",
} as const
const authType = pluckRef(auth, "authType")
const authName = computed(() =>
AUTH_KEY_NAME[authType.value] ? AUTH_KEY_NAME[authType.value] : "None"
)
const getAuthName = (type: HoppGQLAuth["authType"] | undefined) => {
if (!type) return "None"
return AUTH_KEY_NAME[type] ? AUTH_KEY_NAME[type] : "None"
}
const authActive = pluckRef(auth, "authActive")
const clearContent = () => {

View File

@@ -1,6 +1,11 @@
<template>
<div
class="sticky top-sidebarPrimaryStickyFold z-10 flex items-center justify-between border-y border-dividerLight bg-primary pl-4"
class="sticky z-10 flex items-center justify-between border-y border-dividerLight bg-primary pl-4"
:class="[
isCollectionProperty
? 'top-propertiesPrimaryStickyFold'
: 'top-sidebarPrimaryStickyFold',
]"
>
<label class="font-semibold text-secondaryLight">
{{ t("tab.headers") }}
@@ -77,22 +82,11 @@
tabindex="-1"
/>
</span>
<HoppSmartAutoComplete
<SmartEnvInput
v-model="header.key"
:placeholder="`${t('count.header', { count: index + 1 })}`"
:source="commonHeaders"
:spellcheck="false"
:value="header.key"
autofocus
styles="
bg-transparent
flex
flex-1
py-1
px-4
truncate
"
class="!flex flex-1"
@input="
:auto-complete-source="commonHeaders"
@change="
updateHeader(index, {
id: header.id,
key: $event,
@@ -101,17 +95,14 @@
})
"
/>
<input
class="flex flex-1 bg-transparent px-4 py-2"
<SmartEnvInput
v-model="header.value"
:placeholder="`${t('count.value', { count: index + 1 })}`"
:name="`value ${String(index)}`"
:value="header.value"
autofocus
@change="
updateHeader(index, {
id: header.id,
key: header.key,
value: ($event!.target! as HTMLInputElement).value,
value: $event,
active: header.active,
})
"
@@ -156,6 +147,119 @@
</div>
</template>
</draggable>
<draggable
v-model="computedHeaders"
item-key="id"
animation="250"
handle=".draggable-handle"
draggable=".draggable-content"
ghost-class="cursor-move"
chosen-class="bg-primaryLight"
drag-class="cursor-grabbing"
>
<template #item="{ element: header, index }">
<div
class="draggable-content group flex divide-x divide-dividerLight border-b border-dividerLight"
>
<span>
<HoppButtonSecondary
:icon="IconLock"
class="cursor-auto bg-divider text-secondaryLight opacity-25"
tabindex="-1"
/>
</span>
<SmartEnvInput
v-model="header.header.key"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<SmartEnvInput
:model-value="mask(header)"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<span>
<HoppButtonSecondary
v-if="header.source === 'auth'"
v-tippy="{ theme: 'tooltip' }"
:title="t(masking ? 'state.show' : 'state.hide')"
:icon="masking ? IconEye : IconEyeOff"
@click="toggleMask()"
/>
<HoppButtonSecondary
v-else
v-tippy="{ theme: 'tooltip' }"
:icon="IconArrowUpRight"
:title="t('request.go_to_authorization_tab')"
class="cursor-auto text-primary hover:text-primary"
/>
</span>
<span>
<HoppButtonSecondary
v-tippy="{ theme: 'tooltip' }"
:icon="IconArrowUpRight"
:title="t('request.go_to_authorization_tab')"
/>
</span>
</div>
</template>
</draggable>
<draggable
v-model="inheritedProperties"
item-key="id"
animation="250"
handle=".draggable-handle"
draggable=".draggable-content"
ghost-class="cursor-move"
chosen-class="bg-primaryLight"
drag-class="cursor-grabbing"
>
<template #item="{ element: header, index }">
<div
class="draggable-content group flex divide-x divide-dividerLight border-b border-dividerLight"
>
<span>
<HoppButtonSecondary
:icon="IconLock"
class="cursor-auto bg-divider text-secondaryLight opacity-25"
tabindex="-1"
/>
</span>
<SmartEnvInput
v-model="header.header.key"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<SmartEnvInput
:model-value="
header.source === 'auth' ? mask(header) : header.header.value
"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<HoppButtonSecondary
v-if="header.source === 'auth'"
v-tippy="{ theme: 'tooltip' }"
:title="t(masking ? 'state.show' : 'state.hide')"
:icon="masking && header.source === 'auth' ? IconEye : IconEyeOff"
@click="toggleMask()"
/>
<span v-else class="aspect-square w-[2.05rem]"></span>
<span>
<HoppButtonSecondary
v-tippy="{ theme: 'tooltip' }"
:icon="IconInfo"
:title="`This header is inherited from Parent Collection ${
header.inheritedFrom ?? ''
}`"
/>
</span>
</div>
</template>
</draggable>
<HoppSmartPlaceholder
v-if="workingHeaders.length === 0"
:src="`/images/states/${colorMode.value}/add_category.svg`"
@@ -184,7 +288,12 @@ import IconCheckCircle from "~icons/lucide/check-circle"
import IconTrash from "~icons/lucide/trash"
import IconCircle from "~icons/lucide/circle"
import IconWrapText from "~icons/lucide/wrap-text"
import { reactive, ref, watch } from "vue"
import IconArrowUpRight from "~icons/lucide/arrow-up-right"
import IconLock from "~icons/lucide/lock"
import IconEye from "~icons/lucide/eye"
import IconEyeOff from "~icons/lucide/eye-off"
import IconInfo from "~icons/lucide/info"
import { computed, reactive, ref, watch } from "vue"
import * as E from "fp-ts/Either"
import * as O from "fp-ts/Option"
import * as A from "fp-ts/Array"
@@ -206,13 +315,20 @@ import { commonHeaders } from "~/helpers/headers"
import { useCodemirror } from "@composables/codemirror"
import { objRemoveKey } from "~/helpers/functional/object"
import { useVModel } from "@vueuse/core"
import { HoppGQLHeader } from "~/helpers/graphql"
import { throwError } from "~/helpers/functional/error"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const colorMode = useColorMode()
const t = useI18n()
const toast = useToast()
// v-model integration with props and emit
const props = defineProps<{ modelValue: HoppGQLRequest }>()
const props = defineProps<{
modelValue: HoppGQLRequest
isCollectionProperty?: boolean
inheritedProperties?: HoppInheritedProperty
}>()
const emit = defineEmits<{
(e: "update:modelValue", value: HoppGQLRequest): void
@@ -413,7 +529,11 @@ const deleteHeader = (index: number) => {
})
}
workingHeaders.value.splice(index, 1)
workingHeaders.value = pipe(
workingHeaders.value,
A.deleteAt(index),
O.getOrElseW(() => throwError("Working Headers Deletion Out of Bounds"))
)
}
const clearContent = () => {
@@ -429,4 +549,151 @@ const clearContent = () => {
bulkHeaders.value = ""
}
const getComputedAuthHeaders = (
req?: HoppGQLRequest,
auth?: HoppGQLRequest["auth"]
) => {
const request = auth ? { auth: auth ?? { authActive: false } } : req
// If Authorization header is also being user-defined, that takes priority
if (req && req.headers.find((h) => h.key.toLowerCase() === "authorization"))
return []
if (!request) return []
if (!request.auth || !request.auth.authActive) return []
const headers: HoppGQLHeader[] = []
// TODO: Support a better b64 implementation than btoa ?
if (request.auth.authType === "basic") {
const username = request.auth.username
const password = request.auth.password
headers.push({
active: true,
key: "Authorization",
value: `Basic ${btoa(`${username}:${password}`)}`,
})
} else if (
request.auth.authType === "bearer" ||
request.auth.authType === "oauth-2"
) {
headers.push({
active: true,
key: "Authorization",
value: `Bearer ${request.auth.token}`,
})
} else if (request.auth.authType === "api-key") {
const { key, addTo } = request.auth
if (addTo === "Headers" && key) {
headers.push({
active: true,
key,
value: request.auth.value ?? "",
})
}
}
return headers
}
const getComputedHeaders = (req: HoppGQLRequest) => {
return [
...getComputedAuthHeaders(req).map((header) => ({
source: "auth" as const,
header,
})),
]
}
const computedHeaders = computed(() =>
getComputedHeaders(request.value).map((header, index) => ({
id: `header-${index}`,
...header,
}))
)
const inheritedProperties = computed(() => {
if (!props.inheritedProperties?.auth || !props.inheritedProperties.headers)
return []
//filter out headers that are already in the request headers
const inheritedHeaders = props.inheritedProperties.headers.filter(
(header) =>
!request.value.headers.some(
(requestHeader) => requestHeader.key === header.inheritedHeader?.key
)
)
const headers = inheritedHeaders
.filter(
(header) =>
header.inheritedHeader !== null &&
header.inheritedHeader !== undefined &&
header.inheritedHeader.active
)
.map((header, index) => ({
inheritedFrom: props.inheritedProperties?.headers[index].parentName,
source: "headers",
id: `header-${index}`,
header: {
key: header.inheritedHeader?.key,
value: header.inheritedHeader?.value,
active: header.inheritedHeader?.active,
},
}))
let auth = [] as {
inheritedFrom: string
source: "auth"
id: string
header: {
key: string
value: string
active: boolean
}
}[]
const computedAuthHeader = getComputedAuthHeaders(
request.value,
props.inheritedProperties.auth.inheritedAuth
)[0]
if (
computedAuthHeader &&
request.value.auth.authType === "inherit" &&
request.value.auth.authActive
) {
auth = [
{
inheritedFrom: props.inheritedProperties?.auth.parentName,
source: "auth",
id: `header-auth`,
header: computedAuthHeader,
},
]
}
return [...headers, ...auth]
})
const masking = ref(true)
const toggleMask = () => {
masking.value = !masking.value
}
const mask = (header: any) => {
if (header.source === "auth" && masking.value)
return header.header.value.replace(/\S/gi, "*")
return header.header.value
}
// const changeTab = (tab: ComputedHeader["source"]) => {
// if (tab === "auth") emit("change-tab", "authorization")
// else emit("change-tab", "bodyParams")
// }
</script>

View File

@@ -34,10 +34,16 @@
:label="`${t('tab.headers')}`"
:info="activeGQLHeadersCount === 0 ? null : `${activeGQLHeadersCount}`"
>
<GraphqlHeaders v-model="request" />
<GraphqlHeaders
v-model="request"
:inherited-properties="inheritedProperties"
/>
</HoppSmartTab>
<HoppSmartTab :id="'authorization'" :label="`${t('tab.authorization')}`">
<GraphqlAuthorization v-model="request.auth" />
<GraphqlAuthorization
v-model="request.auth"
:inherited-properties="inheritedProperties"
/>
</HoppSmartTab>
</HoppSmartTabs>
<CollectionsSaveRequest
@@ -69,6 +75,7 @@ import { useService } from "dioc/vue"
import { InterceptorService } from "~/services/interceptor.service"
import { editGraphqlRequest } from "~/newstore/collections"
import { GQLTabService } from "~/services/tab/graphql"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const VALID_GQL_OPERATIONS = [
"query",
@@ -93,24 +100,22 @@ const props = withDefaults(
response?: GQLResponseEvent[] | null
optionTab?: GQLOptionTabs
tabId: string
inheritedProperties?: HoppInheritedProperty
}>(),
{
response: null,
optionTab: "query",
}
)
const emit = defineEmits(["update:modelValue", "update:response"])
const emit = defineEmits<{
(e: "update:modelValue", value: HoppGQLRequest): void
(e: "update:optionTab", value: GQLOptionTabs): void
(e: "update:response", value: GQLResponseEvent[]): void
}>()
const selectedOptionTab = useVModel(props, "optionTab", emit)
const request = ref(props.modelValue)
watch(
() => request.value,
(newVal) => {
emit("update:modelValue", newVal)
},
{ deep: true }
)
const request = useVModel(props, "modelValue", emit)
const url = computedWithControl(
() => tabs.currentActiveTab.value,
@@ -131,10 +136,33 @@ const runQuery = async (
startPageProgress()
try {
const runURL = clone(url.value)
const runHeaders = clone(request.value.headers)
const runQuery = clone(request.value.query)
const runVariables = clone(request.value.variables)
const runAuth = clone(request.value.auth)
const runAuth =
request.value.auth.authType === "inherit" && request.value.auth.authActive
? clone(
tabs.currentActiveTab.value.document.inheritedProperties?.auth
.inheritedAuth
)
: clone(request.value.auth)
const inheritedHeaders =
tabs.currentActiveTab.value.document.inheritedProperties?.headers.map(
(header) => {
if (header.inheritedHeader) {
return header.inheritedHeader
}
return []
}
)
let runHeaders: HoppGQLRequest["headers"] = []
if (inheritedHeaders) {
runHeaders = [...inheritedHeaders, ...clone(request.value.headers)]
} else {
runHeaders = clone(request.value.headers)
}
await runGQLOperation({
name: request.value.name,
@@ -142,7 +170,7 @@ const runQuery = async (
headers: runHeaders,
query: runQuery,
variables: runVariables,
auth: runAuth,
auth: runAuth ?? { authType: "none", authActive: false },
operationName: definition?.name?.value,
operationType: definition?.operation ?? "query",
})

View File

@@ -5,6 +5,7 @@
v-model="tab.document.request"
v-model:response="tab.document.response"
v-model:option-tab="tab.document.optionTabPreference"
v-model:inherited-properties="tab.document.inheritedProperties"
:tab-id="tab.id"
/>
</template>

View File

@@ -1,7 +1,12 @@
<template>
<div class="flex flex-1 flex-col">
<div
class="sticky top-upperMobileSecondaryStickyFold z-10 flex flex-shrink-0 items-center justify-between overflow-x-auto border-b border-dividerLight bg-primary pl-4 sm:top-upperSecondaryStickyFold"
class="sticky z-10 flex flex-shrink-0 items-center justify-between overflow-x-auto border-b border-dividerLight bg-primary pl-4"
:class="[
isCollectionProperty
? 'top-propertiesPrimaryStickyFold'
: 'top-upperMobileSecondaryStickyFold sm:top-upperSecondaryStickyFold',
]"
>
<span class="flex items-center">
<label class="truncate font-semibold text-secondaryLight">
@@ -37,6 +42,18 @@
}
"
/>
<HoppSmartItem
v-if="!isRootCollection"
label="Inherit"
:icon="authName === 'Inherit' ? IconCircleDot : IconCircle"
:active="authName === 'Inherit'"
@click="
() => {
auth.authType = 'inherit'
hide()
}
"
/>
<HoppSmartItem
label="Basic Auth"
:icon="authName === 'Basic Auth' ? IconCircleDot : IconCircle"
@@ -135,6 +152,21 @@
<div v-if="auth.authType === 'basic'">
<HttpAuthorizationBasic v-model="auth" />
</div>
<div v-if="auth.authType === 'inherit'" class="p-4">
<span v-if="inheritedProperties?.auth">
{{
t("authorization.inherited_from", {
auth: getAuthName(
inheritedProperties.auth.inheritedAuth.authType
),
collection: inheritedProperties?.auth.parentName,
})
}}
</span>
<span v-else>
{{ t("authorization.save_to_inherit") }}
</span>
</div>
<div v-if="auth.authType === 'bearer'">
<div class="flex flex-1 border-b border-dividerLight">
<SmartEnvInput v-model="auth.token" placeholder="Token" />
@@ -181,6 +213,8 @@ import { pluckRef } from "@composables/ref"
import { useI18n } from "@composables/i18n"
import { useColorMode } from "@composables/theming"
import { useVModel } from "@vueuse/core"
import { onMounted } from "vue"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const t = useI18n()
@@ -188,6 +222,9 @@ const colorMode = useColorMode()
const props = defineProps<{
modelValue: HoppRESTAuth
isCollectionProperty?: boolean
isRootCollection?: boolean
inheritedProperties?: HoppInheritedProperty
}>()
const emit = defineEmits<{
@@ -196,18 +233,34 @@ const emit = defineEmits<{
const auth = useVModel(props, "modelValue", emit)
onMounted(() => {
if (props.isRootCollection && auth.value.authType === "inherit") {
auth.value = {
authType: "none",
authActive: true,
}
}
})
const AUTH_KEY_NAME = {
basic: "Basic Auth",
bearer: "Bearer",
"oauth-2": "OAuth 2.0",
"api-key": "API key",
none: "None",
inherit: "Inherit",
} as const
const authType = pluckRef(auth, "authType")
const authName = computed(() =>
AUTH_KEY_NAME[authType.value] ? AUTH_KEY_NAME[authType.value] : "None"
)
const getAuthName = (type: HoppRESTAuth["authType"] | undefined) => {
if (!type) return "None"
return AUTH_KEY_NAME[type] ? AUTH_KEY_NAME[type] : "None"
}
const authActive = pluckRef(auth, "authActive")
const clearContent = () => {

View File

@@ -1,7 +1,12 @@
<template>
<div class="flex flex-1 flex-col">
<div
class="sticky top-upperMobileSecondaryStickyFold z-10 flex flex-shrink-0 items-center justify-between overflow-x-auto border-b border-dividerLight bg-primary pl-4 sm:top-upperSecondaryStickyFold"
class="sticky z-10 flex flex-shrink-0 items-center justify-between overflow-x-auto border-b border-dividerLight bg-primary pl-4"
:class="[
isCollectionProperty
? 'top-propertiesPrimaryStickyFold'
: 'top-upperMobileSecondaryStickyFold sm:top-upperSecondaryStickyFold',
]"
>
<label class="truncate font-semibold text-secondaryLight">
{{ t("request.header_list") }}
@@ -203,6 +208,61 @@
</div>
</template>
</draggable>
<draggable
v-model="inheritedProperties"
item-key="id"
animation="250"
handle=".draggable-handle"
draggable=".draggable-content"
ghost-class="cursor-move"
chosen-class="bg-primaryLight"
drag-class="cursor-grabbing"
>
<template #item="{ element: header, index }">
<div
class="draggable-content group flex divide-x divide-dividerLight border-b border-dividerLight"
>
<span>
<HoppButtonSecondary
:icon="IconLock"
class="cursor-auto bg-divider text-secondaryLight opacity-25"
tabindex="-1"
/>
</span>
<SmartEnvInput
v-model="header.header.key"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<SmartEnvInput
:model-value="
header.source === 'auth' ? mask(header) : header.header.value
"
:placeholder="`${t('count.value', { count: index + 1 })}`"
readonly
/>
<HoppButtonSecondary
v-if="header.source === 'auth'"
v-tippy="{ theme: 'tooltip' }"
:title="t(masking ? 'state.show' : 'state.hide')"
:icon="masking && header.source === 'auth' ? IconEye : IconEyeOff"
@click="toggleMask()"
/>
<span v-else class="aspect-square w-[2.05rem]"></span>
<span>
<HoppButtonSecondary
v-tippy="{ theme: 'tooltip' }"
:icon="IconInfo"
:title="`This header is inherited from Parent Collection ${
header.inheritedFrom ?? ''
}`"
/>
</span>
</div>
</template>
</draggable>
<HoppSmartPlaceholder
v-if="workingHeaders.length === 0"
:src="`/images/states/${colorMode.value}/add_category.svg`"
@@ -236,6 +296,7 @@ import IconEye from "~icons/lucide/eye"
import IconEyeOff from "~icons/lucide/eye-off"
import IconArrowUpRight from "~icons/lucide/arrow-up-right"
import IconWrapText from "~icons/lucide/wrap-text"
import IconInfo from "~icons/lucide/info"
import { useColorMode } from "@composables/theming"
import { computed, reactive, ref, watch } from "vue"
import { isEqual, cloneDeep } from "lodash-es"
@@ -264,12 +325,14 @@ import { objRemoveKey } from "~/helpers/functional/object"
import {
ComputedHeader,
getComputedHeaders,
getComputedAuthHeaders,
} from "~/helpers/utils/EffectiveURL"
import { aggregateEnvs$, getAggregateEnvs } from "~/newstore/environments"
import { useVModel } from "@vueuse/core"
import { useService } from "dioc/vue"
import { InspectionService, InspectorResult } from "~/services/inspection"
import { RESTTabService } from "~/services/tab/rest"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const t = useI18n()
const toast = useToast()
@@ -288,7 +351,11 @@ const linewrapEnabled = ref(true)
const deletionToast = ref<{ goAway: (delay: number) => void } | null>(null)
// v-model integration with props and emit
const props = defineProps<{ modelValue: HoppRESTRequest }>()
const props = defineProps<{
modelValue: HoppRESTRequest
isCollectionProperty?: boolean
inheritedProperties?: HoppInheritedProperty
}>()
const emit = defineEmits<{
(e: "change-tab", value: RESTOptionTabs): void
@@ -494,6 +561,72 @@ const computedHeaders = computed(() =>
)
)
const inheritedProperties = computed(() => {
if (!props.inheritedProperties?.auth || !props.inheritedProperties.headers)
return []
//filter out headers that are already in the request headers
const inheritedHeaders = props.inheritedProperties.headers.filter(
(header) =>
!request.value.headers.some(
(requestHeader) => requestHeader.key === header.inheritedHeader?.key
)
)
const headers = inheritedHeaders
.filter(
(header) =>
header.inheritedHeader !== null &&
header.inheritedHeader !== undefined &&
header.inheritedHeader.active
)
.map((header, index) => ({
inheritedFrom: props.inheritedProperties?.headers[index].parentName,
source: "headers",
id: `header-${index}`,
header: {
key: header.inheritedHeader?.key,
value: header.inheritedHeader?.value,
active: header.inheritedHeader?.active,
},
}))
let auth = [] as {
inheritedFrom: string
source: "auth"
id: string
header: {
key: string
value: string
active: boolean
}
}[]
const computedAuthHeader = getComputedAuthHeaders(
aggregateEnvs.value,
request.value,
props.inheritedProperties.auth.inheritedAuth
)[0]
if (
computedAuthHeader &&
request.value.auth.authType === "inherit" &&
request.value.auth.authActive
) {
auth = [
{
inheritedFrom: props.inheritedProperties?.auth.parentName,
source: "auth",
id: `header-auth`,
header: computedAuthHeader,
},
]
}
return [...headers, ...auth]
})
const masking = ref(true)
const toggleMask = () => {

View File

@@ -29,14 +29,21 @@
:label="`${t('tab.headers')}`"
:info="`${newActiveHeadersCount$}`"
>
<HttpHeaders v-model="request" @change-tab="changeOptionTab" />
<HttpHeaders
v-model="request"
:inherited-properties="inheritedProperties"
@change-tab="changeOptionTab"
/>
</HoppSmartTab>
<HoppSmartTab
v-if="properties ? properties.includes('authorization') : true"
:id="'authorization'"
:label="`${t('tab.authorization')}`"
>
<HttpAuthorization v-model="request.auth" />
<HttpAuthorization
v-model="request.auth"
:inherited-properties="inheritedProperties"
/>
</HoppSmartTab>
<HoppSmartTab
v-if="properties ? properties.includes('preRequestScript') : true"
@@ -69,6 +76,7 @@ import { HoppRESTRequest } from "@hoppscotch/data"
import { useVModel } from "@vueuse/core"
import { computed } from "vue"
import { defineActionHandler } from "~/helpers/actions"
import { HoppInheritedProperty } from "~/helpers/types/HoppInheritedProperties"
const VALID_OPTION_TABS = [
"params",
@@ -89,6 +97,7 @@ const props = withDefaults(
modelValue: HoppRESTRequest
optionTab: RESTOptionTabs
properties?: string[]
inheritedProperties?: HoppInheritedProperty
}>(),
{
optionTab: "params",

View File

@@ -5,6 +5,7 @@
<HttpRequestOptions
v-model="tab.document.request"
v-model:option-tab="tab.document.optionTabPreference"
v-model:inherited-properties="tab.document.inheritedProperties"
/>
</template>
<template #secondary>

View File

@@ -1,6 +1,6 @@
<template>
<div class="flex flex-col">
<HoppSmartExpand>
<HoppSmartExpand v-if="showExpand">
<template #body>
<HoppSmartItem
v-for="importer in importers"
@@ -11,6 +11,16 @@
/>
</template>
</HoppSmartExpand>
<div v-else class="flex flex-col space-y-2">
<HoppSmartItem
v-for="importer in importers"
:key="importer.id"
:icon="importer.icon"
:label="t(`${importer.name}`)"
@click="emit('importer-selected', importer.id)"
/>
</div>
<hr />
<div class="flex flex-col space-y-2">
<template v-for="exporter in exporters" :key="exporter.id">
@@ -49,7 +59,7 @@
<script setup lang="ts">
import { useI18n } from "@composables/i18n"
import { Component } from "vue"
import { Component, computed } from "vue"
const t = useI18n()
@@ -63,7 +73,7 @@ type ImportExportEntryMeta = {
isVisible?: boolean
}
defineProps<{
const props = defineProps<{
importers: ImportExportEntryMeta[]
exporters: ImportExportEntryMeta[]
}>()
@@ -72,4 +82,6 @@ const emit = defineEmits<{
(e: "importer-selected", importerID: string): void
(e: "exporter-selected", exporterID: string): void
}>()
const showExpand = computed(() => props.importers.length >= 4)
</script>

View File

@@ -31,7 +31,7 @@
</template>
<script setup lang="ts">
import { HoppCollection, HoppRESTRequest } from "@hoppscotch/data"
import { HoppCollection } from "@hoppscotch/data"
import { computed, ref } from "vue"
import { useI18n } from "~/composables/i18n"
import { useReadonlyStream } from "~/composables/stream"
@@ -48,7 +48,7 @@ const hasSelectedCollectionID = computed(() => {
const myCollections = useReadonlyStream(restCollections$, [])
const emit = defineEmits<{
(e: "importFromMyCollection", content: HoppCollection<HoppRESTRequest>): void
(e: "importFromMyCollection", content: HoppCollection): void
}>()
const fetchCollectionFromMyCollections = async () => {

View File

@@ -13,7 +13,7 @@
>
<HoppButtonSecondary
v-tippy="{ theme: 'tooltip' }"
to="https://docs.hoppscotch.io/documentation/features/share-requests"
to="https://docs.hoppscotch.io/documentation/features/widgets"
blank
:title="t('app.wiki')"
:icon="IconHelpCircle"

View File

@@ -1,65 +1,49 @@
<template>
<div
class="flex flex-col p-4 border rounded border-dividerDark"
:class="{
'bg-accentContrast': isEmbedThemeLight,
}"
:class="embedColours"
>
<div
class="flex items-stretch space-x-2"
:class="{
'bg-accentContrast': isEmbedThemeLight,
}"
>
<div class="flex items-stretch space-x-2">
<span
class="flex items-center flex-1 min-w-0 border rounded border-divider"
class="flex items-center flex-1 min-w-0 border rounded"
:class="embedColours"
>
<span
class="flex max-w-[4rem] rounded-l h-full items-center justify-center border-r border-divider text-tiny"
:class="{
'!border-dividerLight bg-accentContrast text-primary':
isEmbedThemeLight,
}"
class="flex max-w-[4rem] rounded-l h-full items-center justify-center border-r text-tiny"
:class="embedColours"
>
<span class="px-3 truncate">
<span class="px-3 truncate text-xs">
{{ method }}
</span>
</span>
<span
class="px-3 truncate"
:class="{
'text-primary': isEmbedThemeLight,
}"
>
<span class="px-3 truncate">
{{ endpoint }}
</span>
</span>
<button
class="flex items-center justify-center flex-shrink-0 px-3 py-2 font-semibold border rounded border-dividerDark bg-primaryDark text-secondary"
:class="{
'!bg-accentContrast text-primaryLight': isEmbedThemeLight,
}"
class="flex items-center justify-center flex-shrink-0 px-3 py-2 font-semibold border rounded"
:class="embedColours"
>
{{ t("action.send") }}
</button>
</div>
<div
class="flex"
:class="{
'bg-accentContrast text-primary': isEmbedThemeLight,
'border-b border-divider pt-2': !noActiveTab,
}"
:class="[{ 'border-b pt-2 ': !noActiveTab }, embedColours]"
>
<span
v-for="option in embedOptions.tabs"
v-show="option.enabled"
:key="option.value"
class="px-2 py-2"
:class="{
'border-b border-dividerDark':
embedOptions.tabs.filter((tab) => tab.enabled)[0]?.value ===
option.value,
}"
class="p-2"
:class="[
{
'border-b ':
embedOptions.tabs.filter((tab) => tab.enabled)[0]?.value ===
option.value,
},
embedColours,
]"
>
{{ option.label }}
</span>
@@ -68,8 +52,9 @@
</template>
<script lang="ts" setup>
import { useVModel } from "@vueuse/core"
import { usePreferredDark, useVModel } from "@vueuse/core"
import { computed } from "vue"
import { useI18n } from "~/composables/i18n"
type Tabs = "parameters" | "body" | "headers" | "authorization"
@@ -98,5 +83,20 @@ const noActiveTab = computed(() => {
return embedOptions.value.tabs.every((tab) => !tab.enabled)
})
const isEmbedThemeLight = computed(() => embedOptions.value.theme === "light")
const systemPrefersDark = usePreferredDark()
const embedColours = computed(() => {
const { theme } = embedOptions.value
const darkThemeClasses = "bg-dark-800 text-white !border-dark-50"
const lightThemeClasses = "bg-white text-black !border-white-50"
const colorThemeMap = {
light: lightThemeClasses,
dark: darkThemeClasses,
system: systemPrefersDark.value ? darkThemeClasses : lightThemeClasses,
}
return colorThemeMap[theme]
})
</script>

View File

@@ -95,13 +95,41 @@ export function runRESTRequest$(
return E.left("script_fail" as const)
}
const effectiveRequest = getEffectiveRESTRequest(
tab.value.document.request,
{
name: "Env",
variables: combineEnvVariables(envs.right),
}
)
const requestAuth =
tab.value.document.request.auth.authType === "inherit" &&
tab.value.document.request.auth.authActive
? tab.value.document.inheritedProperties?.auth.inheritedAuth
: tab.value.document.request.auth
let requestHeaders
const inheritedHeaders =
tab.value.document.inheritedProperties?.headers.map((header) => {
if (header.inheritedHeader) {
return header.inheritedHeader
}
return []
})
if (inheritedHeaders) {
requestHeaders = [
...inheritedHeaders,
...tab.value.document.request.headers,
]
} else {
requestHeaders = [...tab.value.document.request.headers]
}
const finalRequest = {
...tab.value.document.request,
auth: requestAuth ?? { authType: "none", authActive: false },
headers: requestHeaders,
}
const effectiveRequest = getEffectiveRESTRequest(finalRequest, {
name: "Env",
variables: combineEnvVariables(envs.right),
})
const [stream, cancelRun] = createRESTNetworkRequestStream(effectiveRequest)
cancelFunc = cancelRun

View File

@@ -0,0 +1,15 @@
mutation UpdateTeamCollection(
$collectionID: ID!
$newTitle: String
$data: String
) {
updateTeamCollection(
collectionID: $collectionID
newTitle: $newTitle
data: $data
) {
id
title
data
}
}

View File

@@ -3,6 +3,7 @@ query GetCollectionChildren($collectionID: ID!, $cursor: ID) {
children(cursor: $cursor) {
id
title
data
}
}
}

View File

@@ -1,5 +0,0 @@
query GetCollectionTitle($collectionID: ID!) {
collection(collectionID: $collectionID) {
title
}
}

View File

@@ -0,0 +1,6 @@
query GetCollectionTitleAndData($collectionID: ID!) {
collection(collectionID: $collectionID) {
title
data
}
}

View File

@@ -2,6 +2,7 @@ query GetSingleCollection($collectionID: ID!) {
collection(collectionID: $collectionID) {
id
title
data
parent {
id
}

View File

@@ -2,5 +2,6 @@ query RootCollectionsOfTeam($teamID: ID!, $cursor: ID) {
rootCollectionsOfTeam(teamID: $teamID, cursor: $cursor) {
id
title
data
}
}

View File

@@ -2,6 +2,7 @@ subscription TeamCollectionAdded($teamID: ID!) {
teamCollectionAdded(teamID: $teamID) {
id
title
data
parent {
id
}

View File

@@ -2,6 +2,7 @@ subscription TeamCollectionUpdated($teamID: ID!) {
teamCollectionUpdated(teamID: $teamID) {
id
title
data
parent {
id
}

View File

@@ -4,7 +4,6 @@ import * as TE from "fp-ts/TaskEither"
import { pipe, flow } from "fp-ts/function"
import {
HoppCollection,
HoppRESTRequest,
makeCollection,
translateToNewRequest,
} from "@hoppscotch/data"
@@ -15,7 +14,7 @@ import {
ExportAsJsonDocument,
GetCollectionChildrenIDsDocument,
GetCollectionRequestsDocument,
GetCollectionTitleDocument,
GetCollectionTitleAndDataDocument,
} from "./graphql"
export const BACKEND_PAGE_SIZE = 10
@@ -85,16 +84,19 @@ export const getCompleteCollectionTree = (
pipe(
TE.Do,
TE.bind("title", () =>
TE.bind("titleAndData", () =>
pipe(
() =>
runGQLQuery({
query: GetCollectionTitleDocument,
query: GetCollectionTitleAndDataDocument,
variables: {
collectionID: collID,
},
}),
TE.map((x) => x.collection!.title)
TE.map((result) => ({
title: result.collection!.title,
data: result.collection!.data,
}))
)
),
TE.bind("children", () =>
@@ -108,24 +110,36 @@ export const getCompleteCollectionTree = (
TE.bind("requests", () => () => getCollectionRequests(collID)),
TE.map(
({ title, children, requests }) =>
({ titleAndData, children, requests }) =>
<TeamCollection>{
id: collID,
children,
requests,
title,
title: titleAndData.title,
data: titleAndData.data,
}
)
)
export const teamCollToHoppRESTColl = (
coll: TeamCollection
): HoppCollection<HoppRESTRequest> =>
makeCollection({
): HoppCollection => {
const data =
coll.data && coll.data !== "null"
? JSON.parse(coll.data)
: {
auth: { authType: "inherit", authActive: true },
headers: [],
}
return makeCollection({
name: coll.title,
folders: coll.children?.map(teamCollToHoppRESTColl) ?? [],
requests: coll.requests?.map((x) => x.request) ?? [],
auth: data.auth ?? { authType: "inherit", authActive: true },
headers: data.headers ?? [],
})
}
/**
* Get the JSON string of all the collection of the specified team

Some files were not shown because too many files have changed in this diff Show More