1
0
mirror of https://github.com/Infisical/infisical.git synced 2025-03-29 22:02:57 +00:00

Compare commits

..

45 Commits

Author SHA1 Message Date
a913cd97a4 fix: upgrade @aws-sdk/client-secrets-manager from 3.312.0 to 3.317.0
Snyk has created this PR to upgrade @aws-sdk/client-secrets-manager from 3.312.0 to 3.317.0.

See this package in npm:
https://www.npmjs.com/package/@aws-sdk/client-secrets-manager

See this project in Snyk:
https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-05-11 22:13:39 +00:00
781e0b24c8 add docs for spring boot maven 2023-05-10 21:08:38 -04:00
28de8cddd7 Merge pull request from Infisical/snyk-upgrade-9b34558b947330a3bd25eec1f2f2e55c
[Snyk] Upgrade aws-sdk from 2.1358.0 to 2.1360.0
2023-05-10 10:31:42 -04:00
ed3e53f9a3 Merge pull request from Infisical/snyk-upgrade-5eadfb75ba47539ba48a83549a83d185
[Snyk] Upgrade @godaddy/terminus from 4.11.2 to 4.12.0
2023-05-10 10:31:30 -04:00
9cb4d5abb7 improve docker compose and add standalone docs 2023-05-09 22:07:48 -04:00
efdd1e64c4 Merge pull request from Infisical/snyk-upgrade-852b174d6fb41e4afff7bae352b8818d
[Snyk] Upgrade @fortawesome/react-fontawesome from 0.1.19 to 0.2.0
2023-05-09 17:52:12 -07:00
5b3be6063f Merge pull request from akhilmhdh/feat/new-login
refactor(ui): changed frontend to normal i18n without SSR
2023-05-09 17:50:10 -07:00
12c399d4a9 fix typo in k8 docs 2023-05-09 17:34:20 -04:00
ecd17e1d6d refine k8 deploy docs 2023-05-09 17:32:57 -04:00
fb4c811414 update detailed kubernetes helm docs 2023-05-09 16:41:20 -04:00
3561c589b1 refactor(ui): changed frontend to normal i18n without SSR 2023-05-09 23:28:23 +05:30
420d71d923 add membership validate to folder get 2023-05-09 10:23:41 -04:00
3db5c040c3 fix: upgrade @godaddy/terminus from 4.11.2 to 4.12.0
Snyk has created this PR to upgrade @godaddy/terminus from 4.11.2 to 4.12.0.

See this package in npm:
https://www.npmjs.com/package/@godaddy/terminus

See this project in Snyk:
https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-05-09 08:42:48 +00:00
b4f336a5bb fix: upgrade aws-sdk from 2.1358.0 to 2.1360.0
Snyk has created this PR to upgrade aws-sdk from 2.1358.0 to 2.1360.0.

See this package in npm:
https://www.npmjs.com/package/aws-sdk

See this project in Snyk:
https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-05-09 08:42:43 +00:00
43e61c94f0 get folder by id 2023-05-08 21:01:26 -04:00
69fa4a80c5 update check for CLI update 2023-05-08 16:43:28 -04:00
cf9e8b8a6b patch login bug when override empty 2023-05-08 16:09:57 -04:00
c6d5498a42 add dangling prefix for aur 2023-05-08 10:59:24 -04:00
ad7972e7e1 Merge pull request from Infisical/snyk-upgrade-5957efd1bee99a5df1416be8165fe61a
[Snyk] Upgrade @aws-sdk/client-secrets-manager from 3.309.0 to 3.312.0
2023-05-07 19:13:46 -04:00
c6d8f24968 Merge pull request from Infisical/snyk-upgrade-2f346d9e1a2c15f0c0929d23f00e36e5
[Snyk] Upgrade @sentry/tracing from 7.47.0 to 7.48.0
2023-05-07 19:13:36 -04:00
d8ff0bef0d add semantic-version gh action 2023-05-07 19:09:24 -04:00
29b96246b9 add back osx cross build 2023-05-07 17:00:12 -04:00
8503c9355b add completions for aurs 2023-05-07 16:55:42 -04:00
ddf0a272f6 back out of dir for archive file 2023-05-07 15:41:23 -04:00
e3980f8666 bring back completions and man page for cli 2023-05-07 15:27:19 -04:00
d52534b185 Dashboard UI update 2023-05-07 12:24:40 -07:00
db07a033e1 Add filter query param to getApps for Netlify integration 2023-05-06 22:19:00 +03:00
3c71bcaa8d fix: upgrade @sentry/tracing from 7.47.0 to 7.48.0
Snyk has created this PR to upgrade @sentry/tracing from 7.47.0 to 7.48.0.

See this package in npm:
https://www.npmjs.com/package/@sentry/tracing

See this project in Snyk:
https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-05-06 01:50:17 +00:00
476d0be101 Merge pull request from akhilmhdh/fix/token-cache-change
fix(ui): resolved token missing due to cache invalidation
2023-05-05 14:53:23 -07:00
2eff7b6128 set internal port for render 2023-05-05 16:26:03 -04:00
d8a781af1f remove health check 2023-05-05 16:06:28 -04:00
8b42f4f998 typo in doc 2023-05-05 15:50:19 -04:00
da127a3c0a update step 2 of fly.io 2023-05-05 15:48:03 -04:00
d4aa75a182 update self hosting docs layout 2023-05-05 15:42:41 -04:00
d097003e9b set sync=false for mongo db url render 2023-05-05 14:37:24 -04:00
b615a5084e update render IaC template 2023-05-05 14:31:11 -04:00
379f086828 add render IaC 2023-05-05 14:28:25 -04:00
f11a7d0f87 fix(ui): resolved token missing due to cache invalidation 2023-05-05 21:56:26 +05:30
f5aeb85c62 rename standalone docker image 2023-05-05 08:43:57 -04:00
2966aa6eda Merge pull request from akhilmhdh/feat/dashboard-v2
feat(ui): fixed lagging issues with new dashboard
2023-05-04 15:38:00 -07:00
b1f2515731 fixed minor bugs and updated the design 2023-05-04 15:31:06 -07:00
c5094ec37d patch copy invite link 2023-05-04 18:27:09 -04:00
6c745f617d add org id to complete invite link 2023-05-04 17:50:36 -04:00
82995fbd02 feat(ui): fixed lagging issues with new dashboard 2023-05-04 20:45:26 +05:30
b17a40d83e fix: upgrade @fortawesome/react-fontawesome from 0.1.19 to 0.2.0
Snyk has created this PR to upgrade @fortawesome/react-fontawesome from 0.1.19 to 0.2.0.

See this package in npm:
https://www.npmjs.com/package/@fortawesome/react-fontawesome

See this project in Snyk:
https://app.snyk.io/org/maidul98/project/53d4ecb6-6cc1-4918-aa73-bf9cae4ffd13?utm_source=github&utm_medium=referral&page=upgrade-pr
2023-04-28 20:41:56 +00:00
241 changed files with 7050 additions and 7591 deletions
.github/workflows
.goreleaser.yaml
backend
cli/packages
docs
frontend
next-i18next.config.jsnext.config.jspackage-lock.jsonpackage.json
public/locales
en
es
fr
ko
pt-BR
tr
src
components
ee/components
hooks/api/secrets
i18n.ts
layouts/AppLayout
AppLayout.tsx
components/NavBar
pages
reactQuery.ts
views
DashboardPage
Settings
OrgSettingsPage
OrgSettingsPage.tsx
components
OrgMembersTable
OrgNameChangeSection
ProjectSettingsPage
ProjectSettingsPage.tsx
components
AutoCapitalizationSection
CopyProjectIDSection
ProjectNameChangeSection
ServiceTokenSection
render.yaml

@ -1,25 +1,47 @@
name: Release standalone docker image
on:
push:
tags:
- "infisical-standalone/v*.*.*"
on: [workflow_dispatch]
jobs:
infisical-standalone:
name: Build infisical standalone image
runs-on: ubuntu-latest
steps:
- name: Extract version from tag
id: extract_version
run: echo "::set-output name=version::${GITHUB_REF_NAME#infisical/}"
- name: ☁️ Checkout source
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: 📦 Install dependencies to test all dependencies
run: npm ci --only-production
working-directory: backend
- name: 🧪 Run tests
run: npm run test:ci
working-directory: backend
- uses: paulhatch/semantic-version@v5.0.2
id: version
with:
# The prefix to use to identify tags
tag_prefix: "infisical-standalone/v"
# A string which, if present in a git commit, indicates that a change represents a
# major (breaking) change, supports regular expressions wrapped with '/'
major_pattern: "(MAJOR)"
# Same as above except indicating a minor change, supports regular expressions wrapped with '/'
minor_pattern: "(MINOR)"
# A string to determine the format of the version output
version_format: "${major}.${minor}.${patch}-prerelease${increment}"
# Optional path to check for changes. If any changes are detected in the path the
# 'changed' output will true. Enter multiple paths separated by spaces.
change_path: "backend,frontend"
# Prevents pre-v1.0.0 version from automatically incrementing the major version.
# If enabled, when the major version is 0, major releases will be treated as minor and minor as patch. Note that the version_type output is unchanged.
enable_prerelease_mode: true
# - name: 🧪 Run tests
# run: npm run test:ci
# working-directory: backend
- name: version output
run: |
echo "Output Value: ${{ steps.version.outputs.major }}"
echo "Output Value: ${{ steps.version.outputs.minor }}"
echo "Output Value: ${{ steps.version.outputs.patch }}"
echo "Output Value: ${{ steps.version.outputs.version }}"
echo "Output Value: ${{ steps.version.outputs.version_type }}"
echo "Output Value: ${{ steps.version.outputs.increment }}"
- name: Save commit hashes for tag
id: commit
uses: pr-mpt/actions-commit-hash@v2
@ -40,6 +62,7 @@ jobs:
push: true
context: .
tags: |
infisical/standalone-infisical:latest
infisical/infisical:latest
infisical/infisical:${{ steps.commit.outputs.short }}
platforms: linux/amd64,linux/arm64
file: Dockerfile.standalone-infisical

@ -65,10 +65,10 @@ archives:
- goos: windows
format: zip
files:
- README*
- LICENSE*
- manpages/*
- completions/*
- ../README*
- ../LICENSE*
- ../manpages/*
- ../completions/*
release:
replace_existing_draft: true
@ -98,12 +98,12 @@ brews:
folder: Formula
homepage: "https://infisical.com"
description: "The official Infisical CLI"
# install: |-
# bin.install "infisical"
# bash_completion.install "completions/infisical.bash" => "infisical"
# zsh_completion.install "completions/infisical.zsh" => "_infisical"
# fish_completion.install "completions/infisical.fish"
# man1.install "manpages/infisical.1.gz"
install: |-
bin.install "infisical"
bash_completion.install "completions/infisical.bash" => "infisical"
zsh_completion.install "completions/infisical.zsh" => "_infisical"
fish_completion.install "completions/infisical.fish"
man1.install "manpages/infisical.1.gz"
nfpms:
- id: infisical
@ -121,15 +121,15 @@ nfpms:
- apk
- archlinux
bindir: /usr/bin
# contents:
# - src: ./completions/infisical.bash
# dst: /etc/bash_completion.d/infisical
# - src: ./completions/infisical.fish
# dst: /usr/share/fish/vendor_completions.d/infisical.fish
# - src: ./completions/infisical.zsh
# dst: /usr/share/zsh/site-functions/_infisical
# - src: ./manpages/infisical.1.gz
# dst: /usr/share/man/man1/infisical.1.gz
contents:
- src: ./completions/infisical.bash
dst: /etc/bash_completion.d/infisical
- src: ./completions/infisical.fish
dst: /usr/share/fish/vendor_completions.d/infisical.fish
- src: ./completions/infisical.zsh
dst: /usr/share/zsh/site-functions/_infisical
- src: ./manpages/infisical.1.gz
dst: /usr/share/man/man1/infisical.1.gz
scoop:
bucket:
@ -156,6 +156,15 @@ aurs:
install -Dm755 "./infisical" "${pkgdir}/usr/bin/infisical"
# license
install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/infisical/LICENSE"
# completions
mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
mkdir -p "${pkgdir}/usr/share/zsh/site-functions/"
mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/"
install -Dm644 "./completions/infisical.bash" "${pkgdir}/usr/share/bash-completion/completions/infisical"
install -Dm644 "./completions/infisical.zsh" "${pkgdir}/usr/share/zsh/site-functions/_infisical"
install -Dm644 "./completions/infisical.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/infisical.fish"
# man pages
install -Dm644 "./manpages/infisical.1.gz" "${pkgdir}/usr/share/man/man1/infisical.1.gz"
# dockers:
# - dockerfile: cli/docker/Dockerfile

@ -9,16 +9,16 @@
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"@aws-sdk/client-secrets-manager": "^3.312.0",
"@godaddy/terminus": "^4.11.2",
"@aws-sdk/client-secrets-manager": "^3.317.0",
"@godaddy/terminus": "^4.12.0",
"@octokit/rest": "^19.0.5",
"@sentry/node": "^7.41.0",
"@sentry/tracing": "^7.47.0",
"@sentry/tracing": "^7.48.0",
"@types/crypto-js": "^4.1.1",
"@types/libsodium-wrappers": "^0.7.10",
"argon2": "^0.30.3",
"await-to-js": "^3.0.0",
"aws-sdk": "^2.1338.0",
"aws-sdk": "^2.1360.0",
"axios": "^1.3.5",
"axios-retry": "^3.4.0",
"bcrypt": "^5.1.0",
@ -234,15 +234,15 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager": {
"version": "3.312.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.312.0.tgz",
"integrity": "sha512-8MhjP8xXU9pWnWi43YvsU/EIj9R4ABUo+XpNsxHkR9KTsG2QR/0h/xjQO9hqZOukZYW8DwdwLRxH81FsDTLYEQ==",
"version": "3.317.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.317.0.tgz",
"integrity": "sha512-GIb0nXPrfrNJWZoSmysHYmKSP34VPfVno80Ht9j0snoqOTc8eWBqfSlo548Cv47bJKgKqsrqIKl4WH6AyZfF0Q==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/client-sts": "3.312.0",
"@aws-sdk/client-sts": "3.316.0",
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-node": "3.310.0",
"@aws-sdk/credential-provider-node": "3.316.0",
"@aws-sdk/fetch-http-handler": "3.310.0",
"@aws-sdk/hash-node": "3.310.0",
"@aws-sdk/invalid-dependency": "3.310.0",
@ -259,14 +259,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -292,9 +292,9 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.310.0.tgz",
"integrity": "sha512-netFap3Mp9I7bzAjsswHPA5WEbQtNMmXvW9/IVb7tmf85/esXCWindtyI43e/Xerut9ZVyEACPBFn30CLLE2xQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.316.0.tgz",
"integrity": "sha512-wGXfIhR0lJGB8QTT0fwSwwklHePHxd2GW3IQt3trXnEYe0frmJ7vYRnVL5CSRKsikLDmaU7ll3SdsshMzQzo3w==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
@ -314,14 +314,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -334,9 +334,9 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso-oidc": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.310.0.tgz",
"integrity": "sha512-3GKaRSfMD3OiYWGa+qg5KvJw0nLV0Vu7zRiulLuKDvgmWw3SNJKn3frWlmq/bKFUKahLsV8zozbeJItxtKAD6g==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.316.0.tgz",
"integrity": "sha512-e2fvC7o42YV+LcZYfXCcvBn4L7NM9oNccnZ7T+pS6SFpHZlaqkw4uuQMRE6iUAof+Id7Mt7xDrz1x2yGlP+8GA==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
@ -356,14 +356,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -376,14 +376,14 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sts": {
"version": "3.312.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.312.0.tgz",
"integrity": "sha512-t0U7vRvWaMjrzBUo6tPrHe6HE97Blqx+b4GOjFbcbLtzxLlcRfhnWJik0Lp8hJtVqzNoN5mL4OeYgK7CRpL/Sw==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.316.0.tgz",
"integrity": "sha512-5SD59+DRVy1mKckGs/5J8OwWpRS3E5v4BX19XaX/s9JJ5Rw9aZd9DP4SZVpeNXztIPjkQSEzHgrUVlZFB1QJgg==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-node": "3.310.0",
"@aws-sdk/credential-provider-node": "3.316.0",
"@aws-sdk/fetch-http-handler": "3.310.0",
"@aws-sdk/hash-node": "3.310.0",
"@aws-sdk/invalid-dependency": "3.310.0",
@ -401,14 +401,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -464,14 +464,14 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.310.0.tgz",
"integrity": "sha512-gtRz7I+4BBpwZ3tc6UIt5lQuiAFnkpOibxHh95x1M6HDxBjm+uqD6RPZYVH+dULZPYXOtOTsHV0IGjrcV0sSRg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.316.0.tgz",
"integrity": "sha512-ZADkpdEjFCAXyzEpYbCRENlZ/AQEwevWdPd2yshjNo7xvOcepv4pPIBpYd8h9LvRafSLGA7zlWDz84hkIt+HKA==",
"dependencies": {
"@aws-sdk/credential-provider-env": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
"@aws-sdk/credential-provider-process": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.316.0",
"@aws-sdk/credential-provider-web-identity": "3.310.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
@ -483,15 +483,15 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-node": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.310.0.tgz",
"integrity": "sha512-FrOztUcOq2Sp32xGtJvxfvdlmuAeoxIu/AElHzV1bkx6Pzo9DkQBhXrSQ+JFSpI++weOD4ZGFhAvgbgUOT4VAg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.316.0.tgz",
"integrity": "sha512-oE1LTXP8XZp4bT8LhBeolMRiz0RwnmHDC2XpUmWO8LTmbDNrQO0mVzxEvXDLeKaN5BIFIJqNFlMgjWUMa9Kwcw==",
"dependencies": {
"@aws-sdk/credential-provider-env": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
"@aws-sdk/credential-provider-ini": "3.310.0",
"@aws-sdk/credential-provider-ini": "3.316.0",
"@aws-sdk/credential-provider-process": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.316.0",
"@aws-sdk/credential-provider-web-identity": "3.310.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
@ -517,14 +517,14 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-sso": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.310.0.tgz",
"integrity": "sha512-nXkpT8mrM/wRqSiz/a4p9U2UrOKyfZXhbPHIHyQj8K+uLjsYS+WPuH287J4A5Q57A6uarTrj5RjHmVeZVLaHmg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.316.0.tgz",
"integrity": "sha512-8/O2twlsoV1bDkZ9jd7JCMWsftfyoTyRT1UYscsKZGUDEgZRAxRkzS3GLYuLXEWNuxb1OB9rYk/cEJoxwy7T9g==",
"dependencies": {
"@aws-sdk/client-sso": "3.310.0",
"@aws-sdk/client-sso": "3.316.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
"@aws-sdk/token-providers": "3.310.0",
"@aws-sdk/token-providers": "3.316.0",
"@aws-sdk/types": "3.310.0",
"tslib": "^2.5.0"
},
@ -856,9 +856,9 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/smithy-client": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.310.0.tgz",
"integrity": "sha512-UHMFvhoB2RLzsTb0mQe1ofvBUg/+/JEu1uptavxf/hEpEKZnRAaHH5FNkTG+mbFd/olay/QFjqNcMD6t8LcsNQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.316.0.tgz",
"integrity": "sha512-6YXOKbRnXeS8r8RWzuL6JMBolDYM5Wa4fD/VY6x/wK78i2xErHOvqzHgyyeLI1MMw4uqyd4wRNJNWC9TMPduXw==",
"dependencies": {
"@aws-sdk/middleware-stack": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -869,11 +869,11 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/token-providers": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.310.0.tgz",
"integrity": "sha512-G1JvB+2v8k900VJFkKVQXgLGF50ShOEIPxfK1gSQLkSU85vPwGIAANs1KvnlW08FsNbWp3+sKca4kfYKsooXMw==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.316.0.tgz",
"integrity": "sha512-foJ2YmB8A/mtp52riO2zdmBgzA3IpASNgUhY9FZg1BKpGcjqLQDGYP+BY3BA0H7CFsMa4PCf13M5wWwn1onyBA==",
"dependencies": {
"@aws-sdk/client-sso-oidc": "3.310.0",
"@aws-sdk/client-sso-oidc": "3.316.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -959,9 +959,9 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-defaults-mode-browser": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.310.0.tgz",
"integrity": "sha512-Mr2AoQsjAYNM5oAS2YJlYJqhiCvkFV/hu48slOZgbY4G7ueW4cM0DPkR16wqjcRCGqZ4JmAZB8Q5R0DMrLjhOQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.316.0.tgz",
"integrity": "sha512-6FSqLhYmaihtH2n1s4b2rlLW0ABU8N6VZIfzLfe2ING4PF0MzfaMMhnTFUHVXfKCVGoR8yP6iyFTRCyHGVEL1w==",
"dependencies": {
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -973,9 +973,9 @@
}
},
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/util-defaults-mode-node": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.310.0.tgz",
"integrity": "sha512-JyBlvhQGR8w8NpFRZZXRVTDesafFKTu/gTWjcoxP7twa+fYHSIgPPFGnlcJ/iHaucjamSaWi5EQ+YQmnSZ8yHA==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.316.0.tgz",
"integrity": "sha512-dkYy10hdjPSScXXvnjGpZpnJxllkb6ICHgLMwZ4JczLHhPM12T/4PQ758YN8HS+muiYDGX1Bl2z1jd/bMcewBQ==",
"dependencies": {
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
@ -2688,9 +2688,9 @@
}
},
"node_modules/@godaddy/terminus": {
"version": "4.11.2",
"resolved": "https://registry.npmjs.org/@godaddy/terminus/-/terminus-4.11.2.tgz",
"integrity": "sha512-e/kbOWpGKME42eltM/wXM3RxSUOrfureZxEd6Dt6NXyFoJ7E8lnmm7znXydJsL3B7ky4HRFZI+eHrep54NZbeQ==",
"version": "4.12.0",
"resolved": "https://registry.npmjs.org/@godaddy/terminus/-/terminus-4.12.0.tgz",
"integrity": "sha512-zbl6gKxPAnAoAAGCyRN1kOMHTXgiW3C09w8McLKZWSSHQlsiRZlMZzBwSv1aK9PaRU25w80cnOlt3ow+uQwR1Q==",
"dependencies": {
"stoppable": "^1.1.0"
}
@ -3705,6 +3705,24 @@
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@sentry/core": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.48.0.tgz",
"integrity": "sha512-8FYuJTMpyuxRZvlen3gQ3rpOtVInSDmSyXqWEhCLuG/w34AtWoTiW7G516rsAAh6Hy1TP91GooMWbonP3XQNTQ==",
"dependencies": {
"@sentry/types": "7.48.0",
"@sentry/utils": "7.48.0",
"tslib": "^1.9.3"
},
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/core/node_modules/tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@sentry/node": {
"version": "7.47.0",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.47.0.tgz",
@ -3762,16 +3780,60 @@
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@sentry/tracing": {
"version": "7.47.0",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.47.0.tgz",
"integrity": "sha512-hJCpKdekwaFNbCVXxfCz5IxfSEJIKnkPmRSVHITOm5VhKwq2e5kmy4Rn6bzSETwJFSDE8LGbR/3eSfGTqw37XA==",
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.48.0.tgz",
"integrity": "sha512-X6w74Av0fyayNicKIlwL1IdpZ3O0ETQjyYXCDTwHoJL71ojrgrL5vdiNz8WwbPONTnqu98HehPYL/z3DCCKVbw==",
"dependencies": {
"@sentry-internal/tracing": "7.47.0"
"@sentry-internal/tracing": "7.48.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/tracing/node_modules/@sentry-internal/tracing": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.48.0.tgz",
"integrity": "sha512-MFAPDTrvCtfSm0/Zbmx7HA0Q5uCfRadOUpN8Y8rP1ndz+329h2kA3mZRCuC+3/aXL11zs2CHUhcAkGjwH2vogg==",
"dependencies": {
"@sentry/core": "7.48.0",
"@sentry/types": "7.48.0",
"@sentry/utils": "7.48.0",
"tslib": "^1.9.3"
},
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/tracing/node_modules/tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@sentry/types": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.48.0.tgz",
"integrity": "sha512-kkAszZwQ5/v4n7Yyw/DPNRWx7h724mVNRGZIJa9ggUMvTgMe7UKCZZ5wfQmYiKVlGbwd9pxXAcP8Oq15EbByFQ==",
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/utils": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.48.0.tgz",
"integrity": "sha512-d977sghkFVMfld0LrEyyY2gYrfayLPdDEpUDT+hg5y79r7zZDCFyHtdB86699E5K89MwDZahW7Erk+a1nk4x5w==",
"dependencies": {
"@sentry/types": "7.48.0",
"tslib": "^1.9.3"
},
"engines": {
"node": ">=8"
}
},
"node_modules/@sentry/utils/node_modules/tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@sinclair/typebox": {
"version": "0.25.24",
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz",
@ -4762,9 +4824,9 @@
}
},
"node_modules/aws-sdk": {
"version": "2.1358.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1358.0.tgz",
"integrity": "sha512-ZolqFlnm0mDNgub7FGrVi7r5A1rw+58zZziKhlis3IxOtIpHdx4BQU5pH4htAMuD0Ct557p/dC/wmnZH/1Rc9Q==",
"version": "2.1360.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1360.0.tgz",
"integrity": "sha512-wW1CviH1s6bl5+wO+KM7aSc3yy6cQPJT85Fd4rQgrn0uwfjg9fx7KJ0FRhv+eU4DabkRjcSMlKo1IGhARmT6Tw==",
"dependencies": {
"buffer": "4.9.2",
"events": "1.1.1",
@ -13336,15 +13398,15 @@
}
},
"@aws-sdk/client-secrets-manager": {
"version": "3.312.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.312.0.tgz",
"integrity": "sha512-8MhjP8xXU9pWnWi43YvsU/EIj9R4ABUo+XpNsxHkR9KTsG2QR/0h/xjQO9hqZOukZYW8DwdwLRxH81FsDTLYEQ==",
"version": "3.317.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.317.0.tgz",
"integrity": "sha512-GIb0nXPrfrNJWZoSmysHYmKSP34VPfVno80Ht9j0snoqOTc8eWBqfSlo548Cv47bJKgKqsrqIKl4WH6AyZfF0Q==",
"requires": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/client-sts": "3.312.0",
"@aws-sdk/client-sts": "3.316.0",
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-node": "3.310.0",
"@aws-sdk/credential-provider-node": "3.316.0",
"@aws-sdk/fetch-http-handler": "3.310.0",
"@aws-sdk/hash-node": "3.310.0",
"@aws-sdk/invalid-dependency": "3.310.0",
@ -13361,14 +13423,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -13388,9 +13450,9 @@
}
},
"@aws-sdk/client-sso": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.310.0.tgz",
"integrity": "sha512-netFap3Mp9I7bzAjsswHPA5WEbQtNMmXvW9/IVb7tmf85/esXCWindtyI43e/Xerut9ZVyEACPBFn30CLLE2xQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.316.0.tgz",
"integrity": "sha512-wGXfIhR0lJGB8QTT0fwSwwklHePHxd2GW3IQt3trXnEYe0frmJ7vYRnVL5CSRKsikLDmaU7ll3SdsshMzQzo3w==",
"requires": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
@ -13410,14 +13472,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -13427,9 +13489,9 @@
}
},
"@aws-sdk/client-sso-oidc": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.310.0.tgz",
"integrity": "sha512-3GKaRSfMD3OiYWGa+qg5KvJw0nLV0Vu7zRiulLuKDvgmWw3SNJKn3frWlmq/bKFUKahLsV8zozbeJItxtKAD6g==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.316.0.tgz",
"integrity": "sha512-e2fvC7o42YV+LcZYfXCcvBn4L7NM9oNccnZ7T+pS6SFpHZlaqkw4uuQMRE6iUAof+Id7Mt7xDrz1x2yGlP+8GA==",
"requires": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
@ -13449,14 +13511,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -13466,14 +13528,14 @@
}
},
"@aws-sdk/client-sts": {
"version": "3.312.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.312.0.tgz",
"integrity": "sha512-t0U7vRvWaMjrzBUo6tPrHe6HE97Blqx+b4GOjFbcbLtzxLlcRfhnWJik0Lp8hJtVqzNoN5mL4OeYgK7CRpL/Sw==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.316.0.tgz",
"integrity": "sha512-5SD59+DRVy1mKckGs/5J8OwWpRS3E5v4BX19XaX/s9JJ5Rw9aZd9DP4SZVpeNXztIPjkQSEzHgrUVlZFB1QJgg==",
"requires": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-node": "3.310.0",
"@aws-sdk/credential-provider-node": "3.316.0",
"@aws-sdk/fetch-http-handler": "3.310.0",
"@aws-sdk/hash-node": "3.310.0",
"@aws-sdk/invalid-dependency": "3.310.0",
@ -13491,14 +13553,14 @@
"@aws-sdk/node-config-provider": "3.310.0",
"@aws-sdk/node-http-handler": "3.310.0",
"@aws-sdk/protocol-http": "3.310.0",
"@aws-sdk/smithy-client": "3.310.0",
"@aws-sdk/smithy-client": "3.316.0",
"@aws-sdk/types": "3.310.0",
"@aws-sdk/url-parser": "3.310.0",
"@aws-sdk/util-base64": "3.310.0",
"@aws-sdk/util-body-length-browser": "3.310.0",
"@aws-sdk/util-body-length-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.310.0",
"@aws-sdk/util-defaults-mode-node": "3.310.0",
"@aws-sdk/util-defaults-mode-browser": "3.316.0",
"@aws-sdk/util-defaults-mode-node": "3.316.0",
"@aws-sdk/util-endpoints": "3.310.0",
"@aws-sdk/util-retry": "3.310.0",
"@aws-sdk/util-user-agent-browser": "3.310.0",
@ -13542,14 +13604,14 @@
}
},
"@aws-sdk/credential-provider-ini": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.310.0.tgz",
"integrity": "sha512-gtRz7I+4BBpwZ3tc6UIt5lQuiAFnkpOibxHh95x1M6HDxBjm+uqD6RPZYVH+dULZPYXOtOTsHV0IGjrcV0sSRg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.316.0.tgz",
"integrity": "sha512-ZADkpdEjFCAXyzEpYbCRENlZ/AQEwevWdPd2yshjNo7xvOcepv4pPIBpYd8h9LvRafSLGA7zlWDz84hkIt+HKA==",
"requires": {
"@aws-sdk/credential-provider-env": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
"@aws-sdk/credential-provider-process": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.316.0",
"@aws-sdk/credential-provider-web-identity": "3.310.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
@ -13558,15 +13620,15 @@
}
},
"@aws-sdk/credential-provider-node": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.310.0.tgz",
"integrity": "sha512-FrOztUcOq2Sp32xGtJvxfvdlmuAeoxIu/AElHzV1bkx6Pzo9DkQBhXrSQ+JFSpI++weOD4ZGFhAvgbgUOT4VAg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.316.0.tgz",
"integrity": "sha512-oE1LTXP8XZp4bT8LhBeolMRiz0RwnmHDC2XpUmWO8LTmbDNrQO0mVzxEvXDLeKaN5BIFIJqNFlMgjWUMa9Kwcw==",
"requires": {
"@aws-sdk/credential-provider-env": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
"@aws-sdk/credential-provider-ini": "3.310.0",
"@aws-sdk/credential-provider-ini": "3.316.0",
"@aws-sdk/credential-provider-process": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.310.0",
"@aws-sdk/credential-provider-sso": "3.316.0",
"@aws-sdk/credential-provider-web-identity": "3.310.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
@ -13586,14 +13648,14 @@
}
},
"@aws-sdk/credential-provider-sso": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.310.0.tgz",
"integrity": "sha512-nXkpT8mrM/wRqSiz/a4p9U2UrOKyfZXhbPHIHyQj8K+uLjsYS+WPuH287J4A5Q57A6uarTrj5RjHmVeZVLaHmg==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.316.0.tgz",
"integrity": "sha512-8/O2twlsoV1bDkZ9jd7JCMWsftfyoTyRT1UYscsKZGUDEgZRAxRkzS3GLYuLXEWNuxb1OB9rYk/cEJoxwy7T9g==",
"requires": {
"@aws-sdk/client-sso": "3.310.0",
"@aws-sdk/client-sso": "3.316.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
"@aws-sdk/token-providers": "3.310.0",
"@aws-sdk/token-providers": "3.316.0",
"@aws-sdk/types": "3.310.0",
"tslib": "^2.5.0"
}
@ -13853,9 +13915,9 @@
}
},
"@aws-sdk/smithy-client": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.310.0.tgz",
"integrity": "sha512-UHMFvhoB2RLzsTb0mQe1ofvBUg/+/JEu1uptavxf/hEpEKZnRAaHH5FNkTG+mbFd/olay/QFjqNcMD6t8LcsNQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.316.0.tgz",
"integrity": "sha512-6YXOKbRnXeS8r8RWzuL6JMBolDYM5Wa4fD/VY6x/wK78i2xErHOvqzHgyyeLI1MMw4uqyd4wRNJNWC9TMPduXw==",
"requires": {
"@aws-sdk/middleware-stack": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -13863,11 +13925,11 @@
}
},
"@aws-sdk/token-providers": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.310.0.tgz",
"integrity": "sha512-G1JvB+2v8k900VJFkKVQXgLGF50ShOEIPxfK1gSQLkSU85vPwGIAANs1KvnlW08FsNbWp3+sKca4kfYKsooXMw==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.316.0.tgz",
"integrity": "sha512-foJ2YmB8A/mtp52riO2zdmBgzA3IpASNgUhY9FZg1BKpGcjqLQDGYP+BY3BA0H7CFsMa4PCf13M5wWwn1onyBA==",
"requires": {
"@aws-sdk/client-sso-oidc": "3.310.0",
"@aws-sdk/client-sso-oidc": "3.316.0",
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/shared-ini-file-loader": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -13935,9 +13997,9 @@
}
},
"@aws-sdk/util-defaults-mode-browser": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.310.0.tgz",
"integrity": "sha512-Mr2AoQsjAYNM5oAS2YJlYJqhiCvkFV/hu48slOZgbY4G7ueW4cM0DPkR16wqjcRCGqZ4JmAZB8Q5R0DMrLjhOQ==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.316.0.tgz",
"integrity": "sha512-6FSqLhYmaihtH2n1s4b2rlLW0ABU8N6VZIfzLfe2ING4PF0MzfaMMhnTFUHVXfKCVGoR8yP6iyFTRCyHGVEL1w==",
"requires": {
"@aws-sdk/property-provider": "3.310.0",
"@aws-sdk/types": "3.310.0",
@ -13946,9 +14008,9 @@
}
},
"@aws-sdk/util-defaults-mode-node": {
"version": "3.310.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.310.0.tgz",
"integrity": "sha512-JyBlvhQGR8w8NpFRZZXRVTDesafFKTu/gTWjcoxP7twa+fYHSIgPPFGnlcJ/iHaucjamSaWi5EQ+YQmnSZ8yHA==",
"version": "3.316.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.316.0.tgz",
"integrity": "sha512-dkYy10hdjPSScXXvnjGpZpnJxllkb6ICHgLMwZ4JczLHhPM12T/4PQ758YN8HS+muiYDGX1Bl2z1jd/bMcewBQ==",
"requires": {
"@aws-sdk/config-resolver": "3.310.0",
"@aws-sdk/credential-provider-imds": "3.310.0",
@ -15307,9 +15369,9 @@
"dev": true
},
"@godaddy/terminus": {
"version": "4.11.2",
"resolved": "https://registry.npmjs.org/@godaddy/terminus/-/terminus-4.11.2.tgz",
"integrity": "sha512-e/kbOWpGKME42eltM/wXM3RxSUOrfureZxEd6Dt6NXyFoJ7E8lnmm7znXydJsL3B7ky4HRFZI+eHrep54NZbeQ==",
"version": "4.12.0",
"resolved": "https://registry.npmjs.org/@godaddy/terminus/-/terminus-4.12.0.tgz",
"integrity": "sha512-zbl6gKxPAnAoAAGCyRN1kOMHTXgiW3C09w8McLKZWSSHQlsiRZlMZzBwSv1aK9PaRU25w80cnOlt3ow+uQwR1Q==",
"requires": {
"stoppable": "^1.1.0"
}
@ -16042,6 +16104,23 @@
}
}
},
"@sentry/core": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.48.0.tgz",
"integrity": "sha512-8FYuJTMpyuxRZvlen3gQ3rpOtVInSDmSyXqWEhCLuG/w34AtWoTiW7G516rsAAh6Hy1TP91GooMWbonP3XQNTQ==",
"requires": {
"@sentry/types": "7.48.0",
"@sentry/utils": "7.48.0",
"tslib": "^1.9.3"
},
"dependencies": {
"tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
}
}
},
"@sentry/node": {
"version": "7.47.0",
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.47.0.tgz",
@ -16089,11 +16168,50 @@
}
},
"@sentry/tracing": {
"version": "7.47.0",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.47.0.tgz",
"integrity": "sha512-hJCpKdekwaFNbCVXxfCz5IxfSEJIKnkPmRSVHITOm5VhKwq2e5kmy4Rn6bzSETwJFSDE8LGbR/3eSfGTqw37XA==",
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.48.0.tgz",
"integrity": "sha512-X6w74Av0fyayNicKIlwL1IdpZ3O0ETQjyYXCDTwHoJL71ojrgrL5vdiNz8WwbPONTnqu98HehPYL/z3DCCKVbw==",
"requires": {
"@sentry-internal/tracing": "7.47.0"
"@sentry-internal/tracing": "7.48.0"
},
"dependencies": {
"@sentry-internal/tracing": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.48.0.tgz",
"integrity": "sha512-MFAPDTrvCtfSm0/Zbmx7HA0Q5uCfRadOUpN8Y8rP1ndz+329h2kA3mZRCuC+3/aXL11zs2CHUhcAkGjwH2vogg==",
"requires": {
"@sentry/core": "7.48.0",
"@sentry/types": "7.48.0",
"@sentry/utils": "7.48.0",
"tslib": "^1.9.3"
}
},
"tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
}
}
},
"@sentry/types": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.48.0.tgz",
"integrity": "sha512-kkAszZwQ5/v4n7Yyw/DPNRWx7h724mVNRGZIJa9ggUMvTgMe7UKCZZ5wfQmYiKVlGbwd9pxXAcP8Oq15EbByFQ=="
},
"@sentry/utils": {
"version": "7.48.0",
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.48.0.tgz",
"integrity": "sha512-d977sghkFVMfld0LrEyyY2gYrfayLPdDEpUDT+hg5y79r7zZDCFyHtdB86699E5K89MwDZahW7Erk+a1nk4x5w==",
"requires": {
"@sentry/types": "7.48.0",
"tslib": "^1.9.3"
},
"dependencies": {
"tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
}
}
},
"@sinclair/typebox": {
@ -16855,9 +16973,9 @@
"integrity": "sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g=="
},
"aws-sdk": {
"version": "2.1358.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1358.0.tgz",
"integrity": "sha512-ZolqFlnm0mDNgub7FGrVi7r5A1rw+58zZziKhlis3IxOtIpHdx4BQU5pH4htAMuD0Ct557p/dC/wmnZH/1Rc9Q==",
"version": "2.1360.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1360.0.tgz",
"integrity": "sha512-wW1CviH1s6bl5+wO+KM7aSc3yy6cQPJT85Fd4rQgrn0uwfjg9fx7KJ0FRhv+eU4DabkRjcSMlKo1IGhARmT6Tw==",
"requires": {
"buffer": "4.9.2",
"events": "1.1.1",

@ -1,15 +1,15 @@
{
"dependencies": {
"@aws-sdk/client-secrets-manager": "^3.312.0",
"@godaddy/terminus": "^4.11.2",
"@aws-sdk/client-secrets-manager": "^3.317.0",
"@godaddy/terminus": "^4.12.0",
"@octokit/rest": "^19.0.5",
"@sentry/node": "^7.41.0",
"@sentry/tracing": "^7.47.0",
"@sentry/tracing": "^7.48.0",
"@types/crypto-js": "^4.1.1",
"@types/libsodium-wrappers": "^0.7.10",
"argon2": "^0.30.3",
"await-to-js": "^3.0.0",
"aws-sdk": "^2.1338.0",
"aws-sdk": "^2.1360.0",
"axios": "^1.3.5",
"axios-retry": "^3.4.0",
"bcrypt": "^5.1.0",

@ -188,7 +188,7 @@ export const inviteUserToOrganization = async (req: Request, res: Response) => {
});
if (!(await getSmtpConfigured())) {
completeInviteLink = `${siteUrl + '/signupinvite'}?token=${token}&to=${inviteeEmail}`
completeInviteLink = `${siteUrl + '/signupinvite'}?token=${token}&to=${inviteeEmail}&organization_id=${organization._id}`
}
}
@ -217,10 +217,10 @@ export const inviteUserToOrganization = async (req: Request, res: Response) => {
export const verifyUserToOrganization = async (req: Request, res: Response) => {
let user, token;
try {
const {
email,
const {
email,
organizationId,
code
code
} = req.body;
user = await User.findOne({ email }).select('+publicKey');

@ -86,4 +86,22 @@ export const deleteFolder = async (req: Request, res: Response) => {
}
res.send()
}
// TODO: validate workspace
export const getFolderById = async (req: Request, res: Response) => {
const { folderId } = req.params
const folder = await Folder.findById(folderId);
if (!folder) {
throw BadRequestError({ message: "The folder doesn't exist" })
}
// check that user is a member of the workspace
await validateMembership({
userId: req.user._id.toString(),
workspaceId: folder.workspace as any,
acceptedRoles: [ADMIN, MEMBER]
});
res.send({ folder })
}

@ -205,6 +205,7 @@ const getAppsNetlify = async ({ accessToken }: { accessToken: string }) => {
const params = new URLSearchParams({
page: String(page),
per_page: String(perPage),
filter: 'all'
});
const { data } = await request.get(

@ -6,7 +6,7 @@ import {
validateRequest
} from '../../middleware';
import { body, param } from 'express-validator';
import { createFolder, deleteFolder } from '../../controllers/v1/secretsFolderController';
import { createFolder, deleteFolder, getFolderById } from '../../controllers/v1/secretsFolderController';
import { ADMIN, MEMBER } from '../../variables';
router.post(
@ -36,5 +36,15 @@ router.delete(
deleteFolder
);
router.get(
'/:folderId',
requireAuth({
acceptedAuthModes: ['jwt']
}),
param('folderId').exists(),
validateRequest,
getFolderById
);
export default router;

@ -67,7 +67,7 @@ var loginCmd = &cobra.Command{
//override domain
domainQuery := true
if config.INFISICAL_URL_MANUAL_OVERRIDE != util.INFISICAL_DEFAULT_API_URL {
if config.INFISICAL_URL_MANUAL_OVERRIDE != "" && config.INFISICAL_URL_MANUAL_OVERRIDE != util.INFISICAL_DEFAULT_API_URL {
overrideDomain, err := DomainOverridePrompt()
if err != nil {
util.HandleError(err)

@ -34,7 +34,9 @@ func init() {
rootCmd.PersistentFlags().BoolVarP(&debugLogging, "debug", "d", false, "Enable verbose logging")
rootCmd.PersistentFlags().StringVar(&config.INFISICAL_URL, "domain", util.INFISICAL_DEFAULT_API_URL, "Point the CLI to your own backend [can also set via environment variable name: INFISICAL_API_URL]")
rootCmd.PersistentPreRun = func(cmd *cobra.Command, args []string) {
util.CheckForUpdate()
if !util.IsRunningInDocker() {
util.CheckForUpdate()
}
}
// if config.INFISICAL_URL is set to the default value, check if INFISICAL_URL is set in the environment

@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"io"
"io/ioutil"
"net/http"
"os"
"os/exec"
@ -51,7 +52,7 @@ func CheckForUpdate() {
}
func getLatestTag(repoOwner string, repoName string) (string, error) {
url := fmt.Sprintf("https://api.github.com/repos/%s/%s/tags", repoOwner, repoName)
url := fmt.Sprintf("https://api.github.com/repos/%s/%s/releases/latest", repoOwner, repoName)
resp, err := http.Get(url)
if err != nil {
return "", err
@ -67,29 +68,18 @@ func getLatestTag(repoOwner string, repoName string) (string, error) {
return "", err
}
var tags []struct {
Name string `json:"name"`
var releaseTag struct {
TagName string `json:"tag_name"`
}
if err := json.Unmarshal(body, &tags); err != nil {
if err := json.Unmarshal(body, &releaseTag); err != nil {
return "", fmt.Errorf("failed to unmarshal github response: %w", err)
}
// Filter tags with prefix "infisical-cli/"
prefix := "infisical-cli/v"
var validTags []string
for _, tag := range tags {
if strings.HasPrefix(tag.Name, prefix) {
validTags = append(validTags, tag.Name)
}
}
if len(validTags) == 0 {
return "", errors.New("no tags for the CLI is found")
}
tag_prefix := "infisical-cli/v"
// Extract the version from the first valid tag
version := strings.TrimPrefix(validTags[0], prefix)
version := strings.TrimPrefix(releaseTag.TagName, tag_prefix)
return version, nil
}
@ -143,3 +133,16 @@ func getLinuxPackageManager() string {
return ""
}
func IsRunningInDocker() bool {
if _, err := os.Stat("/.dockerenv"); err == nil {
return true
}
cgroup, err := ioutil.ReadFile("/proc/self/cgroup")
if err != nil {
return false
}
return strings.Contains(string(cgroup), "docker")
}

Binary file not shown.

After

(image error) Size: 413 KiB

Binary file not shown.

After

(image error) Size: 78 KiB

Binary file not shown.

After

(image error) Size: 292 KiB

Binary file not shown.

After

(image error) Size: 342 KiB

Binary file not shown.

After

(image error) Size: 104 KiB

@ -0,0 +1,80 @@
---
title: "Spring Boot with Maven"
description: "How to use Infisical to inject environment variables into Java Spring Boot"
---
Prerequisites:
- Set up and add your environment variables to [Infisical Cloud](https://app.infisical.com)
- [Install the CLI](/cli/overview)
## Initialize Infisical
In order for Infisical to know which secrets to fetch, you'll need to first initialize Infisical at the root of your project.
```bash
# navigate to the root of your of your project
cd /path/to/project
# then initialize Infisical
infisical init
```
## Start your application with Maven wrapper
To pass in Infisical secrets into your application, we will utilize the Infisical CLI to inject the secrets into the Maven wrapper executable, which is used to launch your application.
The Maven wrapper executable should already be present in the root directory of your project.
```bash
infisical run -- ./mvnw spring-boot:run --quiet
```
#### Accessing injected secrets
```java example.java
...
import org.springframework.core.env.Environment;
@SpringBootApplication
public class DemoApplication {
@Autowired
private Environment env;
@Bean
public void someMethod() {
System.out.println(env.getProperty("SOME_SECRET_NAME"));
};
}
```
## Debugging with secrets
During the process of debugging your code, it may be necessary to have certain environment variables available. To inject these variables for the purpose of debugging, please follow the instructions provided below.
Note that these instructions are currently only available for IntelliJ.
**Step 1:** On the main tool bar, choose Edit Configuration
<img height="200" src="../../images/spring-maven-debug-1.png" />
**Step 2:** Click the plus icon
<img height="200" src="../../images/spring-maven-debug-2.png" />
**Step 3:** Select Shell Script
<img height="200" src="../../images/spring-maven-debug-3.png" />
**Step 4:** Choose Script Text and then paste in the command below.
<img height="200" src="../../images/spring-maven-debug-4.png" />
```
infisical run -- ./mvnw spring-boot:run -Dspring-boot.run.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:5005"
```
**Step 5:** When you need to run a block of code in debug mode, select the Infisical script
<img height="200" src="../../images/spring-maven-debug-5.png" />

@ -116,7 +116,19 @@
{
"group": "Self-host Infisical",
"pages": [
"self-hosting/overview",
{
"group": "Deployment options",
"pages": [
"self-hosting/overview",
"self-hosting/deployment-options/kubernetes-helm",
"self-hosting/deployment-options/aws-ec2",
"self-hosting/deployment-options/docker-compose",
"self-hosting/deployment-options/standalone-infisical",
"self-hosting/deployment-options/fly.io",
"self-hosting/deployment-options/render",
"self-hosting/deployment-options/digital-ocean-marketplace"
]
},
"self-hosting/configuration/envars",
"self-hosting/configuration/email",
"self-hosting/faq"
@ -176,6 +188,7 @@
"integrations/cicd/gitlab",
"integrations/cicd/circleci",
"integrations/cicd/travisci",
"integrations/frameworks/spring-boot-maven",
"integrations/frameworks/react",
"integrations/frameworks/vue",
"integrations/frameworks/express",

@ -0,0 +1,17 @@
---
title: "AWS EC2"
description: "Learn to install Infisical on EC2 using Cloud Formation template"
---
<iframe width="560" height="315" src="https://www.youtube.com/embed/jR-gM7vIY2c" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
This deployment option will use AWS Cloudformation to auto deploy an instance of Infisical on a single EC2 via Docker Compose.
**Resources that will be provisioned**
- 1 EC2 instance
- 1 DocumentDB cluster
- 1 DocumentDB instance
- Security groups
<a href="https://us-east-1.console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/create/review?templateURL=https://ec2-instance-cloudformation.s3.amazonaws.com/infisical-ec2-deployment.template&stackName=infisical">
<img width="200" src="../../images/deploy-aws-button.png" />
</a>

@ -0,0 +1,6 @@
---
title: "Digital Ocean"
description: "Learn to install Infisical on Digital Ocean"
---
Documentation coming soon

@ -0,0 +1,47 @@
---
title: "Docker Compose"
description: "Learn to install Infisical using our Docker Compose template"
---
## Install Docker on your VM
```bash
# Example in ubuntu
apt-get update
apt-get upgrade
apt install docker-compose
```
## Download the required files
```bash
# Download env file template
wget -O .env https://raw.githubusercontent.com/Infisical/infisical/main/.env.example
# Download docker compose template
wget -O docker-compose.yml https://raw.githubusercontent.com/Infisical/infisical/main/docker-compose.yml
# Download nginx config
mkdir nginx && wget -O ./nginx/default.conf https://raw.githubusercontent.com/Infisical/infisical/main/nginx/default.dev.conf
```
## Update .env file
Tweak the `.env` according to your preferences. Refer to the available [environment variables](/self-hosting/configuration/envars)
```bash
# update environment variables like mongo login
nano .env
```
<Info>
Infisical assumes that you have configured HTTPS. If you didn't configure HTTPS, set `HTTPS_ENABLED` to `false` in the .env file to avoid frequent logouts.
</Info>
## Get the service up and running.
```bash
# Start up services in detached mode
docker-compose -f docker-compose.yml up -d
```
Your Infisical installation is complete and should be running on [http://localhost:80](http://localhost:80). Please note that the containers are not exposed to the internet and only bind to the localhost. It's up to you to configure a firewall, SSL certificates, and implement any additional security measures.

@ -0,0 +1,60 @@
---
title: "Fly.io"
description: "Learn to install Infisical on Fly.io"
---
**Prerequisites**
- Familiar with Fly.io deployment
- Logged in via fly CLI
#### 1. Make a copy of the deployment config
To begin, you'll to make a copy of the following file on your local machine
```toml fly.toml
# fly.toml app configuration file generated for infisical on 2023-05-05T08:57:03-04:00
#
# See https://fly.io/docs/reference/configuration/ for information about how to use this file.
#
app = "infisical"
primary_region = "iad"
[build]
image = "infisical/infisical:latest"
[env]
ENCRYPTION_KEY = <>
JWT_AUTH_SECRET = <>
JWT_REFRESH_SECRET = <>
JWT_SERVICE_SECRET = <>
JWT_SIGNUP_SECRET = <>
MONGO_URL = <>
[http_service]
internal_port = 80
```
#### 2. Add environment variables
Before we can deploy Infisical, we'll need to provide values for the keys under `[env]` config block. For each of the following keys
- `ENCRYPTION_KEY`
- `JWT_AUTH_SECRET`
- `JWT_REFRESH_SECRET`
- `JWT_SERVICE_SECRET`
- `JWT_SIGNUP_SECRET`
you will need to generate a random 16 byte hex string. This can can be generated with `openssl rand -hex 16`.
Lastly, the `MONGO_URL` environment variable requires a document database connection URL.
You can obtain this URL by creating a document database using services such as [MongoDB](https://www.mongodb.com/), [AWS DocumentDB](https://aws.amazon.com/documentdb/), and others.
#### 3. Deploy
Run `fly launch` in the directory where you have the local version of config from step 1 and follow the instructions.
Once done, your very own instance of Infisical should be up and running on Fly.io.
Please note that this version of Infisical requires at least 250MB of memory to operate smoothly.

@ -0,0 +1,214 @@
---
title: "Kubernetes via Helm Chart"
description: "Use our Helm chart to Install Infisical on your Kubernetes cluster"
---
**Prerequisites**
- You have understanding of [Kubernetes](https://kubernetes.io/)
- Installed [Helm package manager](https://helm.sh/) version v3.11.3 or greater
- You have [kubectl](https://kubernetes.io/docs/reference/kubectl/kubectl/) installed and connected to your kubernetes cluster
<iframe width="100%" height="375" src="https://www.youtube.com/embed/ugJZSCcZaV8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
By deploying Infisical on Kubernetes, you can take advantage of its features to ensure that the application is fault-tolerant, highly available, and scalable.
To make the installation process easier and more streamlined, we have created a Helm chart that you can use to install Infisical on Kubernetes.
Helm is a package manager for Kubernetes that simplifies the installation and management of Kubernetes applications.
With our Helm chart, you can easily install Infisical on Kubernetes, configure it to your liking, and scale it up or down as needed.
In the following guide, we'll walk you through the step-by-step process of installing Infisical on Kubernetes using the Helm chart. By the end of this guide, you'll have a fully functional deployment of Infisical running on Kubernetes.
## Install Infisical Helm repository
```bash
helm repo add infisical-helm-charts 'https://dl.cloudsmith.io/public/infisical/helm-charts/helm/charts/'
helm repo update
```
## Add Helm values
Create a values.yaml file to configure various installation settings, such as the docker image tags and environment variables for both the frontend and backend. To explore all configurable properties for your values file, [visit this page](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical).
#### Set image tags
By default, the application will use the latest tag to retrieve the required Docker images, which may be appropriate for most cases.
However, it's important to specify a particular version of Infisical during installation to prevent any significant updates from disrupting your deployment.
View [properties for frontend and backend](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical).
To determine the appropriate versions to use for the docker images, follow the links bellow
- [frontend Docker image](https://hub.docker.com/r/infisical/frontend/tags)
- [backend Docker image](https://hub.docker.com/r/infisical/backend/tags)
```yaml simple-values-example.yaml
frontend:
name: frontend
replicaCount: 2
image:
repository: infisical/frontend
tag: "v0.1.3"
pullPolicy: Always
backend:
replicaCount: 2
image:
repository: infisical/backend
tag: "v0.1.3"
pullPolicy: Always
```
#### Configure environment variables
You can configure environment variables for the frontend and backend in your Helm values file under the property `frontendEnvironmentVariables` and `backendEnvironmentVariables` respectively. View configurable [environment variables](../configuration/envars).
Infisical requires the following backend environment variables to be defined: _`ENCRYPTION_KEY`_, _`JWT_SIGNUP_SECRET`_, _`JWT_REFRESH_SECRET`_, _`JWT_AUTH_SECRET`_, _`JWT_MFA_SECRET`_ and _`JWT_SERVICE_SECRET`_.
However, when the above environment variables are not defined, our Helm chart
will automatically generate these environment variables for you. The generated environment variables will be saved to a Kubernetes secret and will be preserved between upgrades or uninstalls.
```yaml simple-values-example.yaml
...
backendEnvironmentVariables:
HTTPS_ENABLED: true
INVITE_ONLY_SIGNUP: false
...
```
<Info>
Infisical assumes that you have configured HTTPS. If you didn't configure HTTPS, set `HTTPS_ENABLED` to `false` in the backend environment variable to avoid frequent logouts.
</Info>
#### Routing external traffic
By default, Infisical takes all traffic coming to your external load balancer's IP address and routes them Infisical's services.
Infisical uses Nginx to route external traffic. You can install Nginx along with Infisical by setting `ingress.enabled` to `true` in the Helm values file. View all [properties for ingress](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical).
```yaml simple-values-example.yaml
...
ingress:
nginx:
enabled: false #<-- if you would like to install nginx along with Infisical
```
#### Database
Infisical uses a document database as its persistence layer. With this Helm chart, you spin up a MongoDB instance power by Bitnami along side other Infisical services in your cluster.
When persistence is enabled, the data will be stored a Kubernetes Persistence Volume. View all [properties for mongodb](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical).
```yaml simple-values-example.yaml
mongodb:
enabled: false
persistence:
enabled: false
```
To increase data redundancy, we recommend that you use a managed MongoDB service such as AWS Document DB, MongoDB or similar services instead.
Managed database connection string can be set in the `backendEnvironmentVariables`.
#### Example helm values
```yaml simple-values-example.yaml
frontend:
name: frontend
replicaCount: 2
image:
repository: infisical/frontend
tag: "v0.1.3"
pullPolicy: Always
backend:
replicaCount: 2
image:
repository: infisical/backend
tag: "v0.1.3"
pullPolicy: Always
backendEnvironmentVariables:
HTTPS_ENABLED: true
ingress:
nginx:
enabled: false #<-- if you would like to install nginx along with Infisical
```
<Accordion title="Full helm values example">
```yaml values.yaml
ingress:
nginx:
enabled: true
frontend:
enabled: true
name: frontend
podAnnotations: {}
deploymentAnnotations: {}
replicaCount: 4
image:
repository: infisical/frontend
tag: "v0.1.3"
pullPolicy: IfNotPresent
kubeSecretRef: null
service:
annotations: {}
type: ClusterIP
nodePort: ""
backend:
enabled: true
name: backend
podAnnotations: {}
deploymentAnnotations: {}
replicaCount: 4
image:
repository: infisical/backend
tag: "v0.1.3"
pullPolicy: IfNotPresent
kubeSecretRef: null
service:
annotations: {}
type: ClusterIP
nodePort: ""
# View all environment variables https://infisical.com/docs/self-hosting/configuration/envars
backendEnvironmentVariables:
MONGO_URL: <>
HTTPS_ENABLED: <>
## Mongo DB persistence
mongodb:
enabled: false
persistence:
enabled: false
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod" # <-- if you are setting up HTTPS
hostName: app.infisical.com ## <- Replace with your own domain
frontend:
path: /
pathType: Prefix
backend:
path: /api
pathType: Prefix
tls: # <-- if you are setting up HTTPS
- secretName: echo-tls
hosts:
- app.infisical.com
```
</Accordion>
## Install the Helm chart
By default, the helm chart will be installed on your default namespace. If you wish to install the Chart on a different namespace, you may specify
that by adding the `--namespace <namespace-to-install-to>` to your `helm install` command.
```bash
## Installs to default namespace
helm install infisical-helm-charts/infisical --generate-name --values /path/to/values.yaml
```
## Access Infisical
Allow 3-5 minutes for the deployment to complete. Once done, you should now be able to access Infisical on the IP address exposed via Ingress on your load balancer. If you are not sure what the IP address is run `kubectl get ingress` to view the external IP address exposing Infisical.

@ -0,0 +1,15 @@
---
title: "Render.com"
description: "Learn to install Infisical Render.com"
---
**Prerequisites**
- An account at Render.com
- A document DB instance
Deploying on Render is one of the quickest ways to have Infisical running in production.
Before you start deployment, you will need to obtain document db connection string. This will be used for `MONGO_URL` environment variable required during installation.
You can create a document db database using services such as [MongoDB](https://www.mongodb.com/), [AWS DocumentDB](https://aws.amazon.com/documentdb/), and others. Once done, click the link below to start deployment.
### **[Deploy to Render](https://render.com/deploy?repo=https://github.com/Infisical/infisical)**

@ -0,0 +1,73 @@
---
title: "Docker"
description: "Learn to install Infisical purely on docker"
---
The Infisical standalone version combines all the essential components of the application into a single container, making deployment and management more straightforward than using Kubernetes or Docker Compose.
Since all the components are bundled into one image, running this version of Infisical requires a minimum of **230MB of memory**.
This guide assumes you have basic knowledge of Docker and have it installed on your system. If you don't have Docker installed, please follow the official installation guide: https://docs.docker.com/get-docker/
## Pull the Infisical Docker image
Open your terminal or command prompt and enter the following command to pull the Infisical Docker image:
```
docker pull infisical/infisical:latest
```
## Create a .env file
The Infisical Docker image requires a .env file to manage environment variables.
Create a new file called .env in your preferred location. Add the required environment variables listed below. View [all configurable environment variables](../configuration/envars)
<ParamField query="JWT_SIGNUP_SECRET" type="string" default="none" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="JWT_REFRESH_SECRET" type="string" default="none" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="JWT_AUTH_SECRET" type="string" default="none" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="JWT_MFA_SECRET" type="string" default="none" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="JWT_SERVICE_SECRET" type="string" default="none" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="MONGO_URL" type="string" default="none" required>
*TLS based connection string is not yet supported
</ParamField>
```env .example-env
ENCRYPTION_KEY=f40c9178624764ad85a6830b37ce239a
JWT_SIGNUP_SECRET=38ea90fb7998b92176080f457d890392
JWT_REFRESH_SECRET=7764c7bbf3928ad501591a3e005eb364
JWT_AUTH_SECRET=5239fea3a4720c0e524f814a540e14a2
JWT_SERVICE_SECRET=8509fb8b90c9b53e9e61d1e35826dcb5
MONGO_URL=<>
```
<Warning>
The sample environment variables listed above are only to be used as an example and should not be used in production
</Warning>
## Run the Infisical Docker container:
In the terminal or command prompt, navigate to the directory containing the .env file you created. Run the following command to start the Infisical Docker container:
```
docker run --name infisical-app --env-file ./.env -p 80:80 infisical/infisical:latest
```
This command will create a new container named infisical-app using the Infisical Docker image. It will also load the environment variables from the .env file and map the container's port 80 to the host's port 80.
## Verify the installation:
Once the container is running, open a web browser and navigate to http://localhost:80. That's it! You have successfully installed the Infisical application using a single Docker image.

@ -1,142 +1,32 @@
---
title: "Deployment options"
title: "Introduction"
description: "Explore deployment options for self hosting Infisical"
---
To meet various compliance requirements, you may want to self-host Infisical instead of using [Infisical Cloud](https://app.infisical.com/).
Self-hosted Infisical allows you to maintain your sensitive information within your own infrastructure and network, ensuring complete control over your data.
Self-hosted Infisical allows you to maintain your sensitive information within your own infrastructure and network, ensuring complete control over your data.
Choose from a variety of deployment options listed below to get started.
<Tabs>
<Tab title="Local machine">
## Setup and launch Infisical
Make sure you have Git and Docker installed and follow the instructions for your system.
<Tabs>
<Tab title="Linux/macOS">
Run the following command to clone, prepare, and start up Infisical:
```console
git clone https://github.com/Infisical/infisical && cd "$(basename $_ .git)" && cp .env.example .env && docker-compose -f docker-compose.dev.yml up --build
```
</Tab>
<Tab title="Windows Command Prompt">
Run the following command to clone, prepare, and start up Infisical:
```console
git clone https://github.com/Infisical/infisical && cd infisical && copy .env.example .env && docker-compose -f docker-compose.dev.yml up --build
```
</Tab>
<Tab title="Other">
Clone the repository back to your machine.
```console
git clone https://github.com/Infisical/infisical
```
Navigate into the root of the repository create a new `.env` file containing the contents of the [.env.example file](https://github.com/Infisical/infisical/blob/main/.env.example).
Finally run `docker-compose up` to start up Infisical.
```console
docker-compose -f docker-compose.dev.yml up --build
```
</Tab>
</Tabs>
Login to the web app at `http://localhost:8080` by entering the test user email `test@localhost.local` and password `testInfisical1`.
</Tab>
<Tab title="Quick deploy AWS">
<iframe width="560" height="315" src="https://www.youtube.com/embed/jR-gM7vIY2c" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
This deployment option will use AWS Cloudformation to auto deploy an instance of Infisical on a single EC2 via Docker Compose.
**Resources that will be provisioned**
- 1 EC2 instance
- 1 DocumentDB cluster
- 1 DocumentDB instance
- Security groups
<a href="https://us-east-1.console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/create/review?templateURL=https://ec2-instance-cloudformation.s3.amazonaws.com/infisical-ec2-deployment.template&stackName=infisical">
<img width="200" src="../images/deploy-aws-button.png" />
</a>
</Tab>
<Tab title="Quick deploy Digital Ocean">
<Note>This deployment option is highly available</Note>
Coming soon
</Tab>
<Tab title="Helm Kubernetes">
<Note>This deployment option is highly available</Note>
<iframe width="560" height="315" src="https://www.youtube.com/embed/ugJZSCcZaV8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
**Prerequisites**
- You have understanding of [Kubernetes](https://kubernetes.io/)
- Installed [Helm package manager](https://helm.sh/) version v3.11.3 or greater
- You have [kubectl](https://kubernetes.io/docs/reference/kubectl/kubectl/) installed and connected to your kubernetes cluster
#### 1. Install Infisical Helm repository
```bash
helm repo add infisical-helm-charts 'https://dl.cloudsmith.io/public/infisical/helm-charts/helm/charts/'
helm repo update
```
#### 2. Install the Helm chart
By default, the helm chart will be installed on your default namespace. If you wish to install the Chart on a different namespace, you may specify
that by adding the `--namespace <namespace-to-install-to>` to your `helm install` command.
```bash
## Installs to default namespace
helm install infisical-helm-charts/infisical --generate-name
```
#### 3. Access Infisical
Allow 3-5 minutes for the deployment to complete. Once done, you should now be able to access Infisical on the IP address exposed via Ingress on your load balancer. If you are not sure what the IP address is run `kubectl get ingress` to view the external IP address exposing Infisical.
#### Custom configuration
To configure environment variables, database and deployments, you'll need to set the parameters in a `values.yaml` file. To view all available parameters [visit here](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical#parameters)
</Tab>
<Tab title="Bare Docker Compose">
1. Install Docker on your VM
```bash
# Example in ubuntu
apt-get update
apt-get upgrade
apt install docker-compose
```
2. Download the required files
```bash
# Download env file template
wget -O .env https://raw.githubusercontent.com/Infisical/infisical/main/.env.example
# Download docker compose template
wget -O docker-compose.yml https://raw.githubusercontent.com/Infisical/infisical/main/docker-compose.yml
# Download nginx config
mkdir nginx && wget -O ./nginx/default.conf https://raw.githubusercontent.com/Infisical/infisical/main/nginx/default.dev.conf
```
3. Tweak the `.env` according to your preferences. Refer to the available [environment variables](/self-hosting/configuration/envars)
```bash
# update environment variables like mongo login
nano .env
```
4. Get the service up and running.
```bash
# Start up services in detached mode
docker-compose -f docker-compose.yml up -d
```
5. Your Infisical installation is complete and should be running on [http://localhost:80](http://localhost:80). Please note that the containers are not exposed to the internet and only bind to the localhost. It's up to you to configure a firewall, SSL certificates, and implement any additional security measures.
</Tab>
</Tabs>
<Card title="Kubernetes" color="#ea5a0c" href="deployment-options/kubernetes-helm">
Use our Helm chart to Install Infisical on your Kubernetes cluster
</Card>
<CardGroup cols={2}>
<Card title="Fly.io" color="#dc2626" href="deployment-options/fly.io">
Use our standalone docker image to deploy on Fly.io
</Card>
<Card title="Render.com" color="#dc2626" href="deployment-options/render">
Install on Render using our standalone docker image
</Card>
<Card title="AWS EC2" color="#0285c7" href="deployment-options/aws-ec2">
Install infisical with just a few clicks using our Cloud Formation template
</Card>
<Card title="Digital Ocean marketplace" color="#16a34a" href="deployment-options/digital-ocean-marketplace">
Use our one click installer to deploy Infisical
</Card>
<Card title="Docker Compose" color="#0285c7" href="deployment-options/docker-compose">
Install Infisical using our Docker Compose template
</Card>
<Card title="Docker" color="#0285c7" href="deployment-options/standalone-infisical">
Use the fully packaged, single docker image Infisical to deploy anywhere
</Card>
</CardGroup>

@ -1,26 +0,0 @@
// @ts-check
/**
* @type {import('next-i18next').UserConfig}
*/
module.exports = {
// https://www.i18next.com/overview/configuration-options#logging
debug: false,
i18n: {
defaultLocale: "en",
locales: ["en", "ko", "fr", "pt-BR", "pt-PT", "es"],
},
fallbackLng: {
default: ["en"],
},
reloadOnPrerender: process.env.NODE_ENV === "development",
/**
* @link https://github.com/i18next/next-i18next#6-advanced-configuration
*/
// saveMissing: false,
// strictMode: true,
// serializeConfig: false,
// react: { useSuspense: false }
};

@ -1,10 +1,8 @@
// @ts-check
/**
* @type {import('next').NextConfig}
**/
const { i18n } = require("./next-i18next.config.js");
const path = require('path');
const ContentSecurityPolicy = `
@ -23,62 +21,67 @@ const ContentSecurityPolicy = `
// after learning more below.
const securityHeaders = [
{
key: "X-DNS-Prefetch-Control",
value: "on",
key: 'X-DNS-Prefetch-Control',
value: 'on'
},
{
key: "Strict-Transport-Security",
value: "max-age=63072000; includeSubDomains; preload",
key: 'Strict-Transport-Security',
value: 'max-age=63072000; includeSubDomains; preload'
},
{
key: "X-XSS-Protection",
value: "1; mode=block",
key: 'X-XSS-Protection',
value: '1; mode=block'
},
{
key: "X-Frame-Options",
value: "SAMEORIGIN",
key: 'X-Frame-Options',
value: 'SAMEORIGIN'
},
{
key: "Permissions-Policy",
value: "camera=(), microphone=()",
key: 'Permissions-Policy',
value: 'camera=(), microphone=()'
},
{
key: "X-Content-Type-Options",
value: "nosniff",
key: 'X-Content-Type-Options',
value: 'nosniff'
},
{
key: "Referrer-Policy",
value: "strict-origin-when-cross-origin",
key: 'Referrer-Policy',
value: 'strict-origin-when-cross-origin'
},
{
key: "Content-Security-Policy",
value: ContentSecurityPolicy.replace(/\s{2,}/g, " ").trim(),
},
key: 'Content-Security-Policy',
value: ContentSecurityPolicy.replace(/\s{2,}/g, ' ').trim()
}
];
module.exports = {
output: "standalone",
output: 'standalone',
i18n: {
locales: ['en', 'ko', 'fr', 'pt-BR', 'pt-PT', 'es'],
defaultLocale: 'en'
},
async headers() {
return [
{
// Apply these headers to all routes in your application.
source: "/:path*",
headers: securityHeaders,
},
source: '/:path*',
headers: securityHeaders
}
];
},
webpack: (config, { isServer, webpack }) => { // config
webpack: (config, { isServer, webpack }) => {
// config
config.module.rules.push({
test: /\.wasm$/,
loader: "base64-loader",
type: "javascript/auto",
loader: 'base64-loader',
type: 'javascript/auto'
});
config.module.noParse = /\.wasm$/;
config.module.rules.forEach((rule) => {
(rule.oneOf || []).forEach((oneOf) => {
if (oneOf.loader && oneOf.loader.indexOf("file-loader") >= 0) {
if (oneOf.loader && oneOf.loader.indexOf('file-loader') >= 0) {
oneOf.exclude.push(/\.wasm$/);
}
});
@ -89,12 +92,9 @@ module.exports = {
}
// Perform customizations to webpack config
config.plugins.push(
new webpack.IgnorePlugin({ resourceRegExp: /\/__tests__\// })
);
config.plugins.push(new webpack.IgnorePlugin({ resourceRegExp: /\/__tests__\// }));
// Important: return the modified config
return config;
},
i18n,
}
};

@ -1,5 +1,5 @@
{
"name": "npm-proj-1682714499482-0.7355675708334568i1ac8K",
"name": "npm-proj-1682714485428-0.1455767275640205qNcC1I",
"lockfileVersion": 2,
"requires": true,
"packages": {
@ -12,7 +12,7 @@
"@fortawesome/free-brands-svg-icons": "^6.1.2",
"@fortawesome/free-regular-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.2",
"@fortawesome/react-fontawesome": "^0.1.19",
"@fortawesome/react-fontawesome": "^0.2.0",
"@headlessui/react": "^1.7.7",
"@hookform/resolvers": "^2.9.10",
"@octokit/rest": "^19.0.7",
@ -48,14 +48,15 @@
"fs": "^0.0.1-security",
"gray-matter": "^4.0.3",
"http-proxy": "^1.18.1",
"i18next": "^22.4.9",
"i18next": "^22.4.15",
"i18next-browser-languagedetector": "^7.0.1",
"i18next-http-backend": "^2.2.0",
"infisical-node": "^1.0.37",
"jspdf": "^2.5.1",
"jsrp": "^0.2.4",
"lottie-react": "^2.4.0",
"markdown-it": "^13.0.1",
"next": "^12.3.4",
"next-i18next": "^13.0.2",
"posthog-js": "^1.39.4",
"query-string": "^7.1.3",
"react": "^17.0.2",
@ -64,7 +65,7 @@
"react-dom": "^17.0.2",
"react-grid-layout": "^1.3.4",
"react-hook-form": "^7.43.0",
"react-i18next": "^12.1.1",
"react-i18next": "^12.2.2",
"react-mailchimp-subscribe": "^2.1.3",
"react-markdown": "^8.0.3",
"react-redux": "^8.0.2",
@ -2804,15 +2805,15 @@
}
},
"node_modules/@fortawesome/react-fontawesome": {
"version": "0.1.19",
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.19.tgz",
"integrity": "sha512-Hyb+lB8T18cvLNX0S3llz7PcSOAJMLwiVKBuuzwM/nI5uoBw+gQjnf9il0fR1C3DKOI5Kc79pkJ4/xB0Uw9aFQ==",
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz",
"integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==",
"dependencies": {
"prop-types": "^15.8.1"
},
"peerDependencies": {
"@fortawesome/fontawesome-svg-core": "~1 || ~6",
"react": ">=16.x"
"react": ">=16.3"
}
},
"node_modules/@headlessui/react": {
@ -10017,6 +10018,7 @@
"version": "3.30.1",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.30.1.tgz",
"integrity": "sha512-ZNS5nbiSwDTq4hFosEDqm65izl2CWmLz0hARJMyNQBgkUZMIF51cQiMvIQKA6hvuaeWxQDP3hEedM1JZIgTldQ==",
"devOptional": true,
"hasInstallScript": true,
"funding": {
"type": "opencollective",
@ -10094,6 +10096,33 @@
"dev": true,
"peer": true
},
"node_modules/cross-fetch": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz",
"integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==",
"dependencies": {
"node-fetch": "2.6.7"
}
},
"node_modules/cross-fetch/node_modules/node-fetch": {
"version": "2.6.7",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
"integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
"dependencies": {
"whatwg-url": "^5.0.0"
},
"engines": {
"node": "4.x || >=6.0.0"
},
"peerDependencies": {
"encoding": "^0.1.0"
},
"peerDependenciesMeta": {
"encoding": {
"optional": true
}
}
},
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@ -13644,10 +13673,21 @@
"@babel/runtime": "^7.20.6"
}
},
"node_modules/i18next-fs-backend": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/i18next-fs-backend/-/i18next-fs-backend-2.1.1.tgz",
"integrity": "sha512-FTnj+UmNgT3YRml5ruRv0jMZDG7odOL/OP5PF5mOqvXud2vHrPOOs68Zdk6iqzL47cnnM0ZVkK2BAvpFeDJToA=="
"node_modules/i18next-browser-languagedetector": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-7.0.1.tgz",
"integrity": "sha512-Pa5kFwaczXJAeHE56CHG2aWzFBMJNUNghf0Pm4SwSrEMps/PTKqW90EYWlIvhuYStf3Sn1K0vw+gH3+TLdkH1g==",
"dependencies": {
"@babel/runtime": "^7.19.4"
}
},
"node_modules/i18next-http-backend": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/i18next-http-backend/-/i18next-http-backend-2.2.0.tgz",
"integrity": "sha512-Z4sM7R6tzdLknSPER9GisEBxKPg5FkI07UrQniuroZmS15PHQrcCPLyuGKj8SS68tf+O2aEDYSUnmy1TZqZSbw==",
"dependencies": {
"cross-fetch": "3.1.5"
}
},
"node_modules/iconv-lite": {
"version": "0.4.24",
@ -16262,41 +16302,6 @@
}
}
},
"node_modules/next-i18next": {
"version": "13.2.2",
"resolved": "https://registry.npmjs.org/next-i18next/-/next-i18next-13.2.2.tgz",
"integrity": "sha512-t0WU6K+HJoq2nVQ0n6OiiEZja9GyMqtDSU74FmOafgk4ljns+iZ18bsNJiI8rOUXfFfkW96ea1N7D5kbMyT+PA==",
"funding": [
{
"type": "individual",
"url": "https://locize.com/i18next.html"
},
{
"type": "individual",
"url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project"
},
{
"type": "individual",
"url": "https://locize.com"
}
],
"dependencies": {
"@babel/runtime": "^7.20.13",
"@types/hoist-non-react-statics": "^3.3.1",
"core-js": "^3",
"hoist-non-react-statics": "^3.3.2",
"i18next-fs-backend": "^2.1.1"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
"i18next": "^22.0.6",
"next": ">= 12.0.0",
"react": ">= 17.0.2",
"react-i18next": "^12.2.0"
}
},
"node_modules/next/node_modules/postcss": {
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
@ -23995,9 +24000,9 @@
}
},
"@fortawesome/react-fontawesome": {
"version": "0.1.19",
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.19.tgz",
"integrity": "sha512-Hyb+lB8T18cvLNX0S3llz7PcSOAJMLwiVKBuuzwM/nI5uoBw+gQjnf9il0fR1C3DKOI5Kc79pkJ4/xB0Uw9aFQ==",
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz",
"integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==",
"requires": {
"prop-types": "^15.8.1"
}
@ -29322,7 +29327,8 @@
"core-js": {
"version": "3.30.1",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.30.1.tgz",
"integrity": "sha512-ZNS5nbiSwDTq4hFosEDqm65izl2CWmLz0hARJMyNQBgkUZMIF51cQiMvIQKA6hvuaeWxQDP3hEedM1JZIgTldQ=="
"integrity": "sha512-ZNS5nbiSwDTq4hFosEDqm65izl2CWmLz0hARJMyNQBgkUZMIF51cQiMvIQKA6hvuaeWxQDP3hEedM1JZIgTldQ==",
"devOptional": true
},
"core-js-compat": {
"version": "3.30.1",
@ -29382,6 +29388,24 @@
"dev": true,
"peer": true
},
"cross-fetch": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz",
"integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==",
"requires": {
"node-fetch": "2.6.7"
},
"dependencies": {
"node-fetch": {
"version": "2.6.7",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
"integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
"requires": {
"whatwg-url": "^5.0.0"
}
}
}
},
"cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@ -32098,10 +32122,21 @@
"@babel/runtime": "^7.20.6"
}
},
"i18next-fs-backend": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/i18next-fs-backend/-/i18next-fs-backend-2.1.1.tgz",
"integrity": "sha512-FTnj+UmNgT3YRml5ruRv0jMZDG7odOL/OP5PF5mOqvXud2vHrPOOs68Zdk6iqzL47cnnM0ZVkK2BAvpFeDJToA=="
"i18next-browser-languagedetector": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-7.0.1.tgz",
"integrity": "sha512-Pa5kFwaczXJAeHE56CHG2aWzFBMJNUNghf0Pm4SwSrEMps/PTKqW90EYWlIvhuYStf3Sn1K0vw+gH3+TLdkH1g==",
"requires": {
"@babel/runtime": "^7.19.4"
}
},
"i18next-http-backend": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/i18next-http-backend/-/i18next-http-backend-2.2.0.tgz",
"integrity": "sha512-Z4sM7R6tzdLknSPER9GisEBxKPg5FkI07UrQniuroZmS15PHQrcCPLyuGKj8SS68tf+O2aEDYSUnmy1TZqZSbw==",
"requires": {
"cross-fetch": "3.1.5"
}
},
"iconv-lite": {
"version": "0.4.24",
@ -33950,18 +33985,6 @@
}
}
},
"next-i18next": {
"version": "13.2.2",
"resolved": "https://registry.npmjs.org/next-i18next/-/next-i18next-13.2.2.tgz",
"integrity": "sha512-t0WU6K+HJoq2nVQ0n6OiiEZja9GyMqtDSU74FmOafgk4ljns+iZ18bsNJiI8rOUXfFfkW96ea1N7D5kbMyT+PA==",
"requires": {
"@babel/runtime": "^7.20.13",
"@types/hoist-non-react-statics": "^3.3.1",
"core-js": "^3",
"hoist-non-react-statics": "^3.3.2",
"i18next-fs-backend": "^2.1.1"
}
},
"no-case": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",

@ -19,7 +19,7 @@
"@fortawesome/free-brands-svg-icons": "^6.1.2",
"@fortawesome/free-regular-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.2",
"@fortawesome/react-fontawesome": "^0.1.19",
"@fortawesome/react-fontawesome": "^0.2.0",
"@headlessui/react": "^1.7.7",
"@hookform/resolvers": "^2.9.10",
"@octokit/rest": "^19.0.7",
@ -55,14 +55,15 @@
"fs": "^0.0.1-security",
"gray-matter": "^4.0.3",
"http-proxy": "^1.18.1",
"i18next": "^22.4.9",
"i18next": "^22.4.15",
"i18next-browser-languagedetector": "^7.0.1",
"i18next-http-backend": "^2.2.0",
"infisical-node": "^1.0.37",
"jspdf": "^2.5.1",
"jsrp": "^0.2.4",
"lottie-react": "^2.4.0",
"markdown-it": "^13.0.1",
"next": "^12.3.4",
"next-i18next": "^13.0.2",
"posthog-js": "^1.39.4",
"query-string": "^7.1.3",
"react": "^17.0.2",
@ -71,7 +72,7 @@
"react-dom": "^17.0.2",
"react-grid-layout": "^1.3.4",
"react-hook-form": "^7.43.0",
"react-i18next": "^12.1.1",
"react-i18next": "^12.2.2",
"react-mailchimp-subscribe": "^2.1.3",
"react-markdown": "^8.0.3",
"react-redux": "^8.0.2",

@ -1,11 +0,0 @@
{
"title": "Audit Logs",
"subtitle": "Event history for this Infisical project.",
"event": {
"readSecrets": "Secrets Viewed",
"updateSecrets": "Secrets Updated",
"addSecrets": "Secrets Added",
"deleteSecrets": "Secrets Deleted"
},
"ip-address": "IP Address"
}

@ -1,28 +0,0 @@
{
"title": "Usage & Billing",
"description": "View and manage your organization's subscription here",
"subscription": "Subscription",
"starter": {
"name": "Starter",
"price-explanation": "up to 5 team members",
"text": "Manage any project with 5 members for free!",
"subtext": "$5 per member/month afterwards."
},
"professional": {
"name": "Professional",
"price-explanation": "/member/month",
"subtext": "Includes unlimited projects & members.",
"text": "Keep up with key management as you grow."
},
"enterprise": {
"name": "Enterprise",
"text": "Keep up with key management as you grow."
},
"current-usage": "Current Usage",
"free": "Free",
"downgrade": "Downgrade",
"upgrade": "Upgrade",
"learn-more": "Learn More",
"custom-pricing": "Custom Pricing",
"schedule-demo": "Schedule a Demo"
}

@ -1,34 +0,0 @@
{
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "A project with this name already exists.",
"no-mobile": " To use Infisical, please log in through a device with larger dimensions. ",
"email": "Email",
"password": "Password",
"first-name": "First Name",
"last-name": "Last Name",
"logout": "Log Out",
"validate-required": "Please input your {{name}}",
"maintenance-alert": "We are experiencing minor technical difficulties. We are working on solving it right now. Please come back in a few minutes.",
"click-to-copy": "Click to copy",
"project-id": "Project ID",
"save-changes": "Save Changes",
"saved": "Saved",
"drop-zone": "Drag and drop a .env, .json, or .yml file here.",
"drop-zone-keys": "Drag and drop a .env, .json, or .yml file here to add more secrets.",
"role": "Role",
"role_admin": "admin",
"display-name": "Display Name",
"environment": "Environment",
"expired-in": "Expires in",
"language": "Language",
"search": "Search...",
"note": "Note",
"view-more": "View More",
"end-of-history": "End of History",
"select-event": "Select an event",
"event": "Event",
"user": "User",
"source": "Source",
"time": "Time",
"timestamp": "Timestamp"
}

@ -1,36 +0,0 @@
{
"title": "Secrets",
"og-title": "Manage your .env files in seconds",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"search-keys": "Search keys...",
"add-key": "Add Key",
"personal": "Personal",
"personal-description": "Personal keys are only visible to you",
"shared": "Shared",
"shared-description": "Shared keys are visible to your whole team",
"make-shared": "Make Shared",
"make-personal": "Make Personal",
"add-secret": "Add a new secret",
"check-docs": {
"button": "Check Docs",
"title": "Good job!",
"line1": "Congrats on adding more secrets.",
"line2": "Here is how to connect them to your codebase."
},
"sidebar": {
"secret": "Secret",
"key": "Key",
"value": "Value",
"override": "Override value with a personal value",
"version-history": "Version History",
"comments": "Comments & Notes",
"personal-explanation": "This secret is personal. It is not shared with any of your teammates.",
"generate-random-hex": "Generate Random Hex",
"digits": "digits",
"delete-key-dialog": {
"title": "Delete Key",
"confirm-delete-message": "Are you sure you want to delete this secret? This cannot be undone."
}
}
}

@ -1,16 +0,0 @@
{
"title": "Project Integrations",
"description": "Manage your integrations of Infisical with third-party services.",
"no-integrations1": "You don't have any integrations set up yet. When you do, they will appear here.",
"no-integrations2": "To start, click on any of the options below. It takes 5 clicks to set up.",
"available": "Platform & Cloud Integrations",
"available-text1": "Click on the integration you want to connect. This will let your environment variables flow automatically into selected third-party services.",
"available-text2": "Note: during an integration with Heroku, for security reasons, it is impossible to maintain end-to-end encryption. In theory, this lets Infisical decrypt yor environment variables. In practice, we can assure you that this will never be done, and it allows us to protect your secrets from bad actors online. The core Infisical service will always stay end-to-end encrypted. With any questions, reach out support@infisical.com.",
"cloud-integrations": "Cloud Integrations",
"framework-integrations": "Framework Integrations",
"click-to-start": "Click on an integration to begin syncing secrets to it.",
"click-to-setup": "Click on a framework to get the setup instructions.",
"grant-access-to-secrets": "Grant Infisical access to your secrets",
"why-infisical-needs-access": "Most cloud integrations require Infisical to be able to decrypt your secrets so they can be forwarded over.",
"grant-access-button": "Grant access"
}

@ -1,10 +0,0 @@
{
"title": "Login",
"og-title": "Log In to Infisical",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"login": "Log In",
"need-account": "Need an Infisical account?",
"create-account": "Create an account",
"forgot-password": "Forgot your password?",
"error-login": "Wrong credentials."
}

@ -1,28 +0,0 @@
{
"title": "Sign Up",
"og-title": "Replace .env files with 1 line of code. Sign Up for Infisical in 3 minutes.",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage API-keys and environemntal variables. Works with Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Sign Up",
"already-have-account": "Have an account? Log in",
"forgot-password": "Forgot your password?",
"verify": "Verify",
"step1-start": "Let's get started",
"step1-privacy": "By creating an account, you agree to our Terms and have read and acknowledged the Privacy Policy.",
"step1-submit": "Get Started",
"step2-message": "We've sent a verification code to",
"step2-code-error": "Oops. Your code is wrong. Tries left:",
"step2-resend-alert": "Don't see the code?",
"step2-resend-submit": "Resend",
"step2-resend-progress": "Resending...",
"step2-spam-alert": "Make sure to check your spam inbox.",
"step3-message": "Almost there!",
"step4-message": "Save your Emergency Kit",
"step4-description1": "If you get locked out of your account, your Emergency Kit is the only way to sign in.",
"step4-description2": "We recommend you download it and keep it somewhere safe.",
"step4-description3": "It contains your Secret Key which we cannot access or recover for you if you lose it.",
"step4-download": "Download PDF",
"step5-send-invites": "Send Invites",
"step5-invite-team": "Invite your team",
"step5-subtitle": "Infisical is meant to be used with your teammates. Invite them to test it out.",
"step5-skip": "Skip"
}

@ -1,22 +0,0 @@
{
"support": {
"slack": "Join Slack Forum",
"docs": "Read Docs",
"issue": "Open a Github Issue",
"email": "Send us an Email"
},
"user": {
"signed-in-as": "SIGNED IN AS",
"current-organization": "CURRENT ORGANIZATION",
"usage-billing": "Usage & Billing",
"invite": "Invite Members",
"other-organizations": "OTHER ORGANIZATION"
},
"menu": {
"project": "PROJECT",
"secrets": "Secrets",
"members": "Members",
"integrations": "Integrations",
"project-settings": "Project Settings"
}
}

@ -1,13 +0,0 @@
{
"api-keys": "Service Tokens",
"api-keys-description": "Every service token is specific to you, a certain project and a certain environment within this project.",
"add-new": "Add New Token",
"add-dialog": {
"title": "Add an API Key",
"description": "Specify the name and expiry period. When an API key is generated, you will only be able to see it once before it disappears. Make sure to save it somewhere.",
"name": "API Key Name",
"add": "Add API Key",
"copy-service-token": "Copy your API key",
"copy-service-token-description": "Once you close this popup, you will never see your API key again"
}
}

@ -1,11 +0,0 @@
{
"incident-contacts": "Incident Contacts",
"incident-contacts-description": "These contacts will be notified in the unlikely event of a severe incident.",
"no-incident-contacts": "No incident contacts found.",
"add-contact": "Add Contact",
"add-dialog": {
"title": "Add an Incident Contact",
"description": "This contact will be notified in the unlikely event of a severe incident.",
"add-incident": "Add Incident Contact"
}
}

@ -1,14 +0,0 @@
{
"add-member": "Add Member",
"org-members": "Organization Members",
"org-members-description": "Manage members of your organization. These users could afterwards be formed into projects.",
"search-members": "Search members...",
"add-dialog": {
"add-member-to-project": "Add a member to your project",
"already-all-invited": "All the users in your organization are already invited.",
"add-user-org-first": "Add more users to the organization first.",
"user-will-email": "The user will receive an email with the instructions.",
"looking-add": "<0>If you are looking to add users to your org,</0><1>click here</1>",
"add-user-to-org": "Add Users to Organization"
}
}

@ -1,11 +0,0 @@
{
"password": "Password",
"change": "Change password",
"current": "Current password",
"current-wrong": "The current password may be wrong",
"new": "New password",
"validate-base": "Password should contain at least:",
"validate-length": "14 characters",
"validate-case": "1 lowercase character",
"validate-number": "1 number"
}

@ -1,13 +0,0 @@
{
"service-tokens": "Service Tokens",
"service-tokens-description": "Every service token is specific to you, a certain project and a certain environment within this project.",
"add-new": "Add New Token",
"add-dialog": {
"title": "Add a service token for {{target}}",
"description": "When a token is generated, you will only be able to see it once before it disappears. Make sure to save it somewhere.",
"name": "Service Token Name",
"add": "Add Service Token",
"copy-service-token": "Copy your service token",
"copy-service-token-description": "Once you close this popup, you will never see your service token again"
}
}

@ -1,4 +0,0 @@
{
"title": "Project Members",
"description": "This page shows the members of the selected project, and allows you to modify their permissions."
}

@ -1,4 +0,0 @@
{
"title": "Organization Settings",
"description": "Manage members of your organization. These users could afterwards be formed into projects."
}

@ -1,16 +0,0 @@
{
"title": "Personal Settings",
"description": "View and manage your personal information here.",
"emergency": {
"name": "Emergency Kit",
"text1": "Your Emergency Kit contains the information youll need to sign in to your Infisical account.",
"text2": "Only the latest issued Emergency Kit remains valid. To get a new Emergency Kit, verify your password.",
"download": "Download Emergency Kit"
},
"change-language": "Change Language",
"api-keys": {
"title": "API Keys",
"description": "Manage your personal API Keys to access the Infisical API.",
"add-new": "Add new"
}
}

@ -1,15 +0,0 @@
{
"title": "Project Settings",
"description": "These settings only apply to the currently selected Project.",
"danger-zone": "Danger Zone",
"delete-project": "Delete Project",
"project-to-delete": "Project to be Deleted",
"danger-zone-note": "As soon as you delete this project, you will not be able to undo it. This will immediately remove all the keys. If you still want to do that, please enter the name of the project below.",
"delete-project-note": "Note: You can only delete a project in case you have more than one",
"project-id-description": "To integrate Infisical into your code base and get automatic injection of environmental variables, you should use the following Project ID.",
"project-id-description2": "For more guidance, including code snipets for various languages and frameworks, see ",
"auto-generated": "This is your project's auto-generated unique identifier. It can't be changed.",
"docs": "Infisical Docs",
"auto-capitalization": "Auto Capitalization",
"auto-capitalization-description": "According to standards, Infisical will automatically capitalize your keys. If you want to disable this feature, you can do so here."
}

@ -1,28 +0,0 @@
{
"title": "Sign Up",
"og-title": "Replace .env files with 1 line of code. Sign Up for Infisical in 3 minutes.",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage API-keys and environemntal variables. Works with Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Sign Up",
"already-have-account": "Have an account? Log in",
"forgot-password": "Forgot your password?",
"verify": "Verify",
"step1-start": "Let's get started",
"step1-privacy": "By creating an account, you agree to our Terms and have read and acknowledged the Privacy Policy.",
"step1-submit": "Get Started",
"step2-message": "We've sent a verification code to",
"step2-code-error": "Oops. Your code is wrong. Please try again.",
"step2-resend-alert": "Don't see the code?",
"step2-resend-submit": "Resend",
"step2-resend-progress": "Resending...",
"step2-spam-alert": "Make sure to check your spam inbox.",
"step3-message": "Almost there!",
"step4-message": "Save your Emergency Kit",
"step4-description1": "If you get locked out of your account, your Emergency Kit is the only way to sign in.",
"step4-description2": "We recommend you download it and keep it somewhere safe.",
"step4-description3": "It contains your Secret Key which we cannot access or recover for you if you lose it.",
"step4-download": "Download PDF",
"step5-send-invites": "Send Invites",
"step5-invite-team": "Invite your team",
"step5-subtitle": "Infisical is meant to be used with your teammates. Invite them to test it out.",
"step5-skip": "Skip"
}

@ -0,0 +1,319 @@
{
"activity": {
"title": "Audit Logs",
"subtitle": "Event history for this Infisical project.",
"event": {
"readSecrets": "Secrets Viewed",
"updateSecrets": "Secrets Updated",
"addSecrets": "Secrets Added",
"deleteSecrets": "Secrets Deleted"
},
"ip-address": "IP Address"
},
"billing": {
"title": "Usage & Billing",
"description": "View and manage your organization's subscription here",
"subscription": "Subscription",
"starter": {
"name": "Starter",
"price-explanation": "up to 5 team members",
"text": "Manage any project with 5 members for free!",
"subtext": "$5 per member/month afterwards."
},
"professional": {
"name": "Professional",
"price-explanation": "/member/month",
"subtext": "Includes unlimited projects & members.",
"text": "Keep up with key management as you grow."
},
"enterprise": {
"name": "Enterprise",
"text": "Keep up with key management as you grow."
},
"current-usage": "Current Usage",
"free": "Free",
"downgrade": "Downgrade",
"upgrade": "Upgrade",
"learn-more": "Learn More",
"custom-pricing": "Custom Pricing",
"schedule-demo": "Schedule a Demo"
},
"common": {
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "A project with this name already exists.",
"no-mobile": " To use Infisical, please log in through a device with larger dimensions. ",
"email": "Email",
"password": "Password",
"first-name": "First Name",
"last-name": "Last Name",
"logout": "Log Out",
"validate-required": "Please input your {{name}}",
"maintenance-alert": "We are experiencing minor technical difficulties. We are working on solving it right now. Please come back in a few minutes.",
"click-to-copy": "Click to copy",
"project-id": "Project ID",
"save-changes": "Save Changes",
"saved": "Saved",
"drop-zone": "Drag and drop a .env, .json, or .yml file here.",
"drop-zone-keys": "Drag and drop a .env, .json, or .yml file here to add more secrets.",
"role": "Role",
"role_admin": "admin",
"display-name": "Display Name",
"environment": "Environment",
"expired-in": "Expires in",
"language": "Language",
"search": "Search...",
"note": "Note",
"view-more": "View More",
"end-of-history": "End of History",
"select-event": "Select an event",
"event": "Event",
"user": "User",
"source": "Source",
"time": "Time",
"timestamp": "Timestamp"
},
"dashboard": {
"title": "Secrets",
"og-title": "Manage your .env files in seconds",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"search-keys": "Search keys...",
"add-key": "Add Key",
"personal": "Personal",
"personal-description": "Personal keys are only visible to you",
"shared": "Shared",
"shared-description": "Shared keys are visible to your whole team",
"make-shared": "Make Shared",
"make-personal": "Make Personal",
"add-secret": "Add a new secret",
"check-docs": {
"button": "Check Docs",
"title": "Good job!",
"line1": "Congrats on adding more secrets.",
"line2": "Here is how to connect them to your codebase."
},
"sidebar": {
"secret": "Secret",
"key": "Key",
"value": "Value",
"override": "Override value with a personal value",
"version-history": "Version History",
"comments": "Comments & Notes",
"personal-explanation": "This secret is personal. It is not shared with any of your teammates.",
"generate-random-hex": "Generate Random Hex",
"digits": "digits",
"delete-key-dialog": {
"title": "Delete Key",
"confirm-delete-message": "Are you sure you want to delete this secret? This cannot be undone."
}
}
},
"integrations": {
"title": "Project Integrations",
"description": "Manage your integrations of Infisical with third-party services.",
"no-integrations1": "You don't have any integrations set up yet. When you do, they will appear here.",
"no-integrations2": "To start, click on any of the options below. It takes 5 clicks to set up.",
"available": "Platform & Cloud Integrations",
"available-text1": "Click on the integration you want to connect. This will let your environment variables flow automatically into selected third-party services.",
"available-text2": "Note: during an integration with Heroku, for security reasons, it is impossible to maintain end-to-end encryption. In theory, this lets Infisical decrypt yor environment variables. In practice, we can assure you that this will never be done, and it allows us to protect your secrets from bad actors online. The core Infisical service will always stay end-to-end encrypted. With any questions, reach out support@infisical.com.",
"cloud-integrations": "Cloud Integrations",
"framework-integrations": "Framework Integrations",
"click-to-start": "Click on an integration to begin syncing secrets to it.",
"click-to-setup": "Click on a framework to get the setup instructions.",
"grant-access-to-secrets": "Grant Infisical access to your secrets",
"why-infisical-needs-access": "Most cloud integrations require Infisical to be able to decrypt your secrets so they can be forwarded over.",
"grant-access-button": "Grant access"
},
"login": {
"title": "Login",
"og-title": "Log In to Infisical",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"login": "Log In",
"need-account": "Need an Infisical account?",
"create-account": "Create an account",
"forgot-password": "Forgot your password?",
"error-login": "Wrong credentials."
},
"mfa": {
"title": "Sign Up",
"og-title": "Replace .env files with 1 line of code. Sign Up for Infisical in 3 minutes.",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage API-keys and environemntal variables. Works with Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Sign Up",
"already-have-account": "Have an account? Log in",
"forgot-password": "Forgot your password?",
"verify": "Verify",
"step1-start": "Let's get started",
"step1-privacy": "By creating an account, you agree to our Terms and have read and acknowledged the Privacy Policy.",
"step1-submit": "Get Started",
"step2-message": "We've sent a verification code to",
"step2-code-error": "Oops. Your code is wrong. Tries left:",
"step2-resend-alert": "Don't see the code?",
"step2-resend-submit": "Resend",
"step2-resend-progress": "Resending...",
"step2-spam-alert": "Make sure to check your spam inbox.",
"step3-message": "Almost there!",
"step4-message": "Save your Emergency Kit",
"step4-description1": "If you get locked out of your account, your Emergency Kit is the only way to sign in.",
"step4-description2": "We recommend you download it and keep it somewhere safe.",
"step4-description3": "It contains your Secret Key which we cannot access or recover for you if you lose it.",
"step4-download": "Download PDF",
"step5-send-invites": "Send Invites",
"step5-invite-team": "Invite your team",
"step5-subtitle": "Infisical is meant to be used with your teammates. Invite them to test it out.",
"step5-skip": "Skip"
},
"nav": {
"support": {
"slack": "Join Slack Forum",
"docs": "Read Docs",
"issue": "Open a Github Issue",
"email": "Send us an Email"
},
"user": {
"signed-in-as": "SIGNED IN AS",
"current-organization": "CURRENT ORGANIZATION",
"usage-billing": "Usage & Billing",
"invite": "Invite Members",
"other-organizations": "OTHER ORGANIZATION"
},
"menu": {
"project": "PROJECT",
"secrets": "Secrets",
"members": "Members",
"integrations": "Integrations",
"project-settings": "Project Settings"
}
},
"section": {
"api-key": {
"api-keys": "Service Tokens",
"api-keys-description": "Every service token is specific to you, a certain project and a certain environment within this project.",
"add-new": "Add New Token",
"add-dialog": {
"title": "Add an API Key",
"description": "Specify the name and expiry period. When an API key is generated, you will only be able to see it once before it disappears. Make sure to save it somewhere.",
"name": "API Key Name",
"add": "Add API Key",
"copy-service-token": "Copy your API key",
"copy-service-token-description": "Once you close this popup, you will never see your API key again"
}
},
"incident": {
"incident-contacts": "Incident Contacts",
"incident-contacts-description": "These contacts will be notified in the unlikely event of a severe incident.",
"no-incident-contacts": "No incident contacts found.",
"add-contact": "Add Contact",
"add-dialog": {
"title": "Add an Incident Contact",
"description": "This contact will be notified in the unlikely event of a severe incident.",
"add-incident": "Add Incident Contact"
}
},
"members": {
"add-member": "Add Member",
"org-members": "Organization Members",
"org-members-description": "Manage members of your organization. These users could afterwards be formed into projects.",
"search-members": "Search members...",
"add-dialog": {
"add-member-to-project": "Add a member to your project",
"already-all-invited": "All the users in your organization are already invited.",
"add-user-org-first": "Add more users to the organization first.",
"user-will-email": "The user will receive an email with the instructions.",
"looking-add": "<0>If you are looking to add users to your org,</0><1>click here</1>",
"add-user-to-org": "Add Users to Organization"
}
},
"password": {
"password": "Password",
"change": "Change password",
"current": "Current password",
"current-wrong": "The current password may be wrong",
"new": "New password",
"validate-base": "Password should contain at least:",
"validate-length": "14 characters",
"validate-case": "1 lowercase character",
"validate-number": "1 number"
},
"token": {
"service-tokens": "Service Tokens",
"service-tokens-description": "Every service token is specific to you, a certain project and a certain environment within this project.",
"add-new": "Add New Token",
"add-dialog": {
"title": "Add a service token for {{target}}",
"description": "When a token is generated, you will only be able to see it once before it disappears. Make sure to save it somewhere.",
"name": "Service Token Name",
"add": "Add Service Token",
"copy-service-token": "Copy your service token",
"copy-service-token-description": "Once you close this popup, you will never see your service token again"
}
}
},
"settings": {
"members": {
"title": "Project Members",
"description": "This page shows the members of the selected project, and allows you to modify their permissions."
},
"org": {
"title": "Organization Settings",
"description": "Manage members of your organization. These users could afterwards be formed into projects."
},
"personal": {
"title": "Personal Settings",
"description": "View and manage your personal information here.",
"emergency": {
"name": "Emergency Kit",
"text1": "Your Emergency Kit contains the information youll need to sign in to your Infisical account.",
"text2": "Only the latest issued Emergency Kit remains valid. To get a new Emergency Kit, verify your password.",
"download": "Download Emergency Kit"
},
"change-language": "Change Language",
"api-keys": {
"title": "API Keys",
"description": "Manage your personal API Keys to access the Infisical API.",
"add-new": "Add new"
}
},
"project": {
"title": "Project Settings",
"description": "These settings only apply to the currently selected Project.",
"danger-zone": "Danger Zone",
"delete-project": "Delete Project",
"project-to-delete": "Project to be Deleted",
"danger-zone-note": "As soon as you delete this project, you will not be able to undo it. This will immediately remove all the keys. If you still want to do that, please enter the name of the project below.",
"delete-project-note": "Note: You can only delete a project in case you have more than one",
"project-id-description": "To integrate Infisical into your code base and get automatic injection of environmental variables, you should use the following Project ID.",
"project-id-description2": "For more guidance, including code snipets for various languages and frameworks, see ",
"auto-generated": "This is your project's auto-generated unique identifier. It can't be changed.",
"docs": "Infisical Docs",
"auto-capitalization": "Auto Capitalization",
"auto-capitalization-description": "According to standards, Infisical will automatically capitalize your keys. If you want to disable this feature, you can do so here."
}
},
"signup": {
"title": "Sign Up",
"og-title": "Replace .env files with 1 line of code. Sign Up for Infisical in 3 minutes.",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage API-keys and environemntal variables. Works with Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Sign Up",
"already-have-account": "Have an account? Log in",
"forgot-password": "Forgot your password?",
"verify": "Verify",
"step1-start": "Let's get started",
"step1-privacy": "By creating an account, you agree to our Terms and have read and acknowledged the Privacy Policy.",
"step1-submit": "Get Started",
"step2-message": "We've sent a verification code to",
"step2-code-error": "Oops. Your code is wrong. Please try again.",
"step2-resend-alert": "Don't see the code?",
"step2-resend-submit": "Resend",
"step2-resend-progress": "Resending...",
"step2-spam-alert": "Make sure to check your spam inbox.",
"step3-message": "Almost there!",
"step4-message": "Save your Emergency Kit",
"step4-description1": "If you get locked out of your account, your Emergency Kit is the only way to sign in.",
"step4-description2": "We recommend you download it and keep it somewhere safe.",
"step4-description3": "It contains your Secret Key which we cannot access or recover for you if you lose it.",
"step4-download": "Download PDF",
"step5-send-invites": "Send Invites",
"step5-invite-team": "Invite your team",
"step5-subtitle": "Infisical is meant to be used with your teammates. Invite them to test it out.",
"step5-skip": "Skip"
}
}

@ -1,11 +0,0 @@
{
"title": "Historial de eventos",
"subtitle": "Historial de eventos para este proyecto de Infisical.",
"event": {
"readSecrets": "Secrets vistas",
"updateSecrets": "Secrets actualizadas",
"addSecrets": "Secrets añadidas",
"deleteSecrets": "Secrets eliminadas"
},
"ip-address": "Dirección IP"
}

@ -1,28 +0,0 @@
{
"title": "Uso & Facturación",
"description": "Visualiza y gestiona la suscripción de tu organización",
"subscription": "Suscripción",
"starter": {
"name": "Starter",
"price-explanation": "hasta 5 miembros",
"text": "¡Hasta 5 personas gratis!",
"subtext": "Después, $5 por miembro/mes."
},
"professional": {
"name": "Professional",
"price-explanation": "/miembro/mes",
"subtext": "Includes unlimited projects & members.",
"text": "Mantén la gestión de claves a medida que creces."
},
"enterprise": {
"name": "Enterprise",
"text": "Mantén la gestión de claves a medida que creces."
},
"current-usage": "Uso actual",
"free": "Gratis",
"downgrade": "Reducir",
"upgrade": "Mejorar",
"learn-more": "Saber más",
"custom-pricing": "A medida",
"schedule-demo": "Solicitar una demo"
}

@ -1,34 +0,0 @@
{
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "Ya existe un proyecto con este nombre.",
"no-mobile": "Para usar Infisical, inicia sesión con un dispositivo de mayores dimesiones.",
"email": "Correo electrónico",
"password": "Contraseña",
"first-name": "Nombre",
"last-name": "Apellidos",
"logout": "Cerrar sesión",
"validate-required": "Por favor, introduce tu {{name}}",
"maintenance-alert": "Estamos experimentando problemas técnicos. Estamos trabajando para resolverlos. Por favor, vuelve en unos minutos.",
"click-to-copy": "Click para copiar",
"project-id": "ID de proyecto",
"save-changes": "Guardar cambios",
"saved": "Guardado",
"drop-zone": "Arrastra y suelta un archivo .env, .json o .yml aquí.",
"drop-zone-keys": "Arrastra y suelta un archivo .env, .json, or .yml aquí para añadir más secrets.",
"role": "Rol",
"role_admin": "admin",
"display-name": "Nombre visible",
"environment": "Entorno",
"expired-in": "Expira en",
"language": "Idioma",
"search": "Buscar...",
"note": "Nota",
"view-more": "Ver más",
"end-of-history": "Fin del historial",
"select-event": "Selecciona un evento",
"event": "Evento",
"user": "Usuario",
"source": "Fuente",
"time": "Hora",
"timestamp": "Marca temporal"
}

@ -1,35 +0,0 @@
{
"title": "Secrets",
"og-title": "Gestiona tus archivos .env en segundos",
"og-description": "Infisical es una solución cifrada de extremo a extremo que habilita a los equipos a compartir archivos .env de forma sencilla.",
"search-keys": "Buscar claves...",
"add-key": "Añadir clave",
"personal": "Personal",
"personal-description": "Las claves personales solo son visibles para ti",
"shared": "Compartido",
"shared-description": "Claves compartidas son visibles para todo tu equipo",
"make-shared": "Hacer compartida",
"make-personal": "Hacer personal",
"add-secret": "Añadir una nueva clave",
"check-docs": {
"button": "Comprueba la documentación",
"title": "¡Buen trabajo!",
"line1": "Enhorabuena por añadir claves.",
"line2": "Averigua como usarlo desde tu código."
},
"sidebar": {
"secret": "Secret",
"key": "Clave",
"value": "valor",
"override": "Sobreescribir valor con el valor personal",
"version-history": "Historial de versiones",
"comments": "Comentarios & Notas",
"personal-explanation": "Esta clave es personal. No será compartida con ninguno de tus compañeros.",
"generate-random-hex": "Generar Hex aleatorio",
"digits": "dígitos",
"delete-key-dialog": {
"title": "Eliminar clave",
"confirm-delete-message": "¿Estás seguro de que quieres eliminar esta clave? Esta operación no se puede deshacer."
}
}
}

@ -1,16 +0,0 @@
{
"title": "Integraciones del proyecto",
"description": "Gestiona tus integraciones de Infisical con aplicaciones de terceros.",
"no-integrations1": "No tienes ninguna integración configurada. Cuando las tengas, aparecerán aquí.",
"no-integrations2": "Para empezar haz click en cualquiera de las opciones siguientes. Se necesitan tan solo 5 pasos.",
"available": "Integraciones con la nube",
"available-text1": "Haz click en la integración que quieras conectar. Esto hará que las variables de entorno se configuren automáticamente en los servicios de terceros seleccionados.",
"available-text2": "Nota: en la integración con Heroku, por motivos de seguridad, es imposible mantener el cifrado de extremo a extremo. En teoría, esto permite a Infisical descifrar tus variables de entorno. En la práctica, te podemos asegurar que esto nunca va a suceder. El núcleo del servicio Infisical siempre estará cifrado de extremo a extremo. Si tienes dudas, escríbenos a support@infisical.com.",
"cloud-integrations": "Integraciones con la nube",
"framework-integrations": "Integraciones con frameworks",
"click-to-start": "Haz click en una integración para empezar a sincronizar las claves.",
"click-to-setup": "Haz click en un framework para ver las instrucciones de uso.",
"grant-access-to-secrets": "Autorizar Infisical el acceso a tus claves",
"why-infisical-needs-access": "La mayoría de las integraciones en la nube requieren a Infisical tener permiso para descifrar tus claves, para que puedan ser enviadas.",
"grant-access-button": "Autorizar acceso"
}

@ -1,10 +0,0 @@
{
"title": "Iniciar sesión",
"og-title": "Iniciar sesión en Infisical",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"login": "Iniciar sesión",
"need-account": "¿Necesitas una cuenta de Infisical?",
"create-account": "Crea una cuenta",
"forgot-password": "¿Has olvidado tu contraseña?",
"error-login": "Datos incorrectos."
}

@ -1,28 +0,0 @@
{
"title": "Registrarse",
"og-title": "Reemplaza los archivos .env con una línea de código. Regístrate en Infisical en solo 3 minutos.",
"og-description": "Infisical es una plataforma sencilla cifrada de extremo a extremo que permite a equipos sincronizar y gestionar API-keys y variables de entorno. Funciona con Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Registrarse",
"already-have-account": "¿Ya tienes una cuenta? Inicia sesión",
"forgot-password": "¿Has olvidado tu contraseña?",
"verify": "Verificar",
"step1-start": "Vamos a empezar",
"step1-privacy": "Al crear la cuenta, aceptas nuestros Términos y has leído y comprendido nuestra Política de privacidad.",
"step1-submit": "Empezar",
"step2-message": "Hemos enviado un código a",
"step2-code-error": "Oops. Tu código es incorrecto. Intentos restantes:",
"step2-resend-alert": "¿No ves el código?",
"step2-resend-submit": "Volver a enviar",
"step2-resend-progress": "Reenviando...",
"step2-spam-alert": "Asegúrate de comprobar la carpeta de spam.",
"step3-message": "¡Casi hemos terminado!",
"step4-message": "Guarda tu Kit de emergencia",
"step4-description1": "Si pierdes el acceso a tu cuenta, tu Kit de emergencia es la única forma de iniciar sesión.",
"step4-description2": "Te recomendamos que lo descargues y lo guardes en un sitio seguro.",
"step4-description3": "Contiene tu Clave secreta, a la que no tenemos acceso y tampoco podemos recuperar si la pierdes.",
"step4-download": "Descargar PDF",
"step5-send-invites": "Enviar invitaciones",
"step5-invite-team": "Invita a tu equipo",
"step5-subtitle": "Infisical está pensado para usarlo con tus compañeros. Invítalos a probarlo.",
"step5-skip": "Saltar"
}

@ -1,22 +0,0 @@
{
"support": {
"slack": "Unirse al Slack",
"docs": "Leer documentación",
"issue": "Abrir una Github Issue",
"email": "Envíanos un correo electrónico"
},
"user": {
"signed-in-as": "INICIADO COMO",
"current-organization": "ORGANIZACIÓN ACTUAL",
"usage-billing": "Uso & Facturación",
"invite": "Invitar miembros",
"other-organizations": "OTRA ORGANIZACIÓN"
},
"menu": {
"project": "PROYECTO",
"secrets": "Claves",
"members": "Miembros",
"integrations": "Integraciones",
"project-settings": "Configuración del proyecto"
}
}

@ -1,13 +0,0 @@
{
"api-keys": "Tokens de servicio",
"api-keys-description": "Cada token de servicio es específico para ti, para cada proyecto y para cada entorno en este proyecto.",
"add-new": "Añadir nuevo token",
"add-dialog": {
"title": "Añadir una API Key",
"description": "Especifica el nombre y el período de expiración. Cuando una API key es generada, solo podrás verla una vez hasta que desaparezca. Asegúrate de guardarla en algún lado.",
"name": "Nombre de la API Key",
"add": "Añadir API Key",
"copy-service-token": "Copia tu API key",
"copy-service-token-description": "Una vez que cierres esta ventana, no volverás a ver tu API key"
}
}

@ -1,11 +0,0 @@
{
"incident-contacts": "Contactos de incidencias",
"incident-contacts-description": "Estos contactos serán notificados en caso de una incidencia grave.",
"no-incident-contacts": "No se han encontrado contactos para incidencias.",
"add-contact": "Añadir contacto",
"add-dialog": {
"title": "Añadir un contacto de incidencias",
"description": "Este contacto será notificado en el caso de una incidencia grave.",
"add-incident": "Añadir contacto de incidencias"
}
}

@ -1,14 +0,0 @@
{
"add-member": "Añadir miembro",
"org-members": "Miembros de la organización",
"org-members-description": "Gestiona los miembros de tu organización. Estos usuarios podrán ser agrupados en proyectos más tarde.",
"search-members": "Buscar miembros...",
"add-dialog": {
"add-member-to-project": "Añadir un miembro al proyecto",
"already-all-invited": "Todos los uaurios en tu organización han sido invitados.",
"add-user-org-first": "Añadir primero más usuarios a la organización.",
"user-will-email": "El usuario recibirá un correo electrónico con la invitación.",
"looking-add": "<0>Si quieres añadir usuarios a tu organización, haz</0><1>click aquí</1>",
"add-user-to-org": "Añadir usuarios a la organización"
}
}

@ -1,11 +0,0 @@
{
"password": "Contraseña",
"change": "Cambiar contraseña",
"current": "Contraseña actual",
"current-wrong": "La contraseña actual puede puede que sea incorrecta",
"new": "Nueva contraseña",
"validate-base": "La contraseña debe contener como mínimo:",
"validate-length": "14 caracteres",
"validate-case": "1 letra en minúsculas",
"validate-number": "1 número"
}

@ -1,13 +0,0 @@
{
"service-tokens": "Tokens de servicio",
"service-tokens-description": "Cada token de servicio es específico para ti, para cada proyecto y para cada entorno en este proyectos.",
"add-new": "Añadir nuevo token",
"add-dialog": {
"title": "Añade un nuevo token de servicio para {{target}}",
"description": "Cuando se genera un token, solo podrás verlo una vez antes de que desaparezca. Asegúrate de guardarlo en algún lugar.",
"name": "Nombre del token de servicio",
"add": "Añadir token de servicio",
"copy-service-token": "Copiar tu token de servicio",
"copy-service-token-description": "Una vez cierres esta ventana, no volverás a ver tu token de nuevo"
}
}

@ -1,4 +0,0 @@
{
"title": "Miembros del proyecto",
"description": "Esta página muestra los miembros del proyecto seleccionado, y permite modificar sus permisos."
}

@ -1,4 +0,0 @@
{
"title": "Configuración de la organización",
"description": "Gestiona los miembros de tu organización. Estos usuarios podrán ser gestionados en proyectos más adelante."
}

@ -1,16 +0,0 @@
{
"title": "Preferencias personales",
"description": "Visualiza y gestiona aquí tu información personal.",
"emergency": {
"name": "Kit de emergencia",
"text1": "Tu Kit de emergencia contiene la información que necesitarás para iniciar sesión en tu cuenta de Infisical.",
"text2": "Solo el último Kit de emergencia descargado es válido. Para conseguir uno nuevo, introduce tu contraseña.",
"download": "Descargar Kit de emergencia"
},
"change-language": "Cambiar idioma",
"api-keys": {
"title": "API Keys",
"description": "Gestiona tus API Keys personales para acceder a la API de Infisical.",
"add-new": "Añadir"
}
}

@ -1,15 +0,0 @@
{
"title": "Configuración de proyecto",
"description": "Esta configuración solo afecta al proyecto seleccionado.",
"danger-zone": "Zona de peligro",
"delete-project": "Eliminar proyecto",
"project-to-delete": "Proyecto a eliminar",
"danger-zone-note": "Tan pronto como elimines el proyecto, no podrás volver atrás. Esto eliminará todas las claves. Si aún quieres hacerlo, introduce el nombre del proyecto a continuación.",
"delete-project-note": "Nota: Solo puedes eliminar un proyecto si tienes más de uno",
"project-id-description": "Para integrar Infisical en tu aplicación y obtener la inyección automática de variables de entorno, debes usar el siguiente ID de Proyecto.",
"project-id-description2": "Para más guías, incluyendo ejemplos de código en diferentes lenguajes y frameworks, visita ",
"auto-generated": "Este es el ID único y autogenerado de proyecto. No se puede modificar.",
"docs": "Documentación de Infisical",
"auto-capitalization": "Mayúsculas automáticas",
"auto-capitalization-description": "De acuerdo con los estándares, Infisical pondrá en mayúsculas tus claves. Si quieres desactivar esta funcionalidad, lo puedes hacer aquí."
}

@ -1,28 +0,0 @@
{
"title": "Registrarse",
"og-title": "Reemplaza los archivos .env con una línea de código. Regístrate en Infisical en solo 3 minutos.",
"og-description": "Infisical es una plataforma sencilla cifrada de extremo a extremo que permite a equipos sincronizar y gestionar API-keys y variables de entorno. Funciona con Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Registrarse",
"already-have-account": "¿Ya tienes una cuenta? Inicia sesión",
"forgot-password": "¿Has olvidado tu contraseña?",
"verify": "Verificar",
"step1-start": "Vamos a empezar",
"step1-privacy": "Al crear la cuenta, aceptas nuestros Términos y has leído y comprendido nuestra Política de privacidad.",
"step1-submit": "Empezar",
"step2-message": "Hemos enviado un código a",
"step2-code-error": "Oops. Tu código es incorrecto. Intentos restantes:",
"step2-resend-alert": "¿No ves el código?",
"step2-resend-submit": "Volver a enviar",
"step2-resend-progress": "Reenviando...",
"step2-spam-alert": "Asegúrate de comprobar la carpeta de spam.",
"step3-message": "¡Casi hemos terminado!",
"step4-message": "Guarda tu Kit de emergencia",
"step4-description1": "Si pierdes el acceso a tu cuenta, tu Kit de emergencia es la única forma de iniciar sesión.",
"step4-description2": "Te recomendamos que lo descargues y lo guardes en un sitio seguro.",
"step4-description3": "Contiene tu Clave secreta, a la que no tenemos acceso y tampoco podemos recuperar si la pierdes.",
"step4-download": "Descargar PDF",
"step5-send-invites": "Enviar invitaciones",
"step5-invite-team": "Invita a tu equipo",
"step5-subtitle": "Infisical está pensado para usarlo con tus compañeros. Invítalos a probarlo.",
"step5-skip": "Saltar"
}

@ -0,0 +1,319 @@
{
"activity": {
"title": "Historial de eventos",
"subtitle": "Historial de eventos para este proyecto de Infisical.",
"event": {
"readSecrets": "Secrets vistas",
"updateSecrets": "Secrets actualizadas",
"addSecrets": "Secrets añadidas",
"deleteSecrets": "Secrets eliminadas"
},
"ip-address": "Dirección IP"
},
"billing": {
"title": "Uso & Facturación",
"description": "Visualiza y gestiona la suscripción de tu organización",
"subscription": "Suscripción",
"starter": {
"name": "Starter",
"price-explanation": "hasta 5 miembros",
"text": "¡Hasta 5 personas gratis!",
"subtext": "Después, $5 por miembro/mes."
},
"professional": {
"name": "Professional",
"price-explanation": "/miembro/mes",
"subtext": "Includes unlimited projects & members.",
"text": "Mantén la gestión de claves a medida que creces."
},
"enterprise": {
"name": "Enterprise",
"text": "Mantén la gestión de claves a medida que creces."
},
"current-usage": "Uso actual",
"free": "Gratis",
"downgrade": "Reducir",
"upgrade": "Mejorar",
"learn-more": "Saber más",
"custom-pricing": "A medida",
"schedule-demo": "Solicitar una demo"
},
"common": {
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "Ya existe un proyecto con este nombre.",
"no-mobile": "Para usar Infisical, inicia sesión con un dispositivo de mayores dimesiones.",
"email": "Correo electrónico",
"password": "Contraseña",
"first-name": "Nombre",
"last-name": "Apellidos",
"logout": "Cerrar sesión",
"validate-required": "Por favor, introduce tu {{name}}",
"maintenance-alert": "Estamos experimentando problemas técnicos. Estamos trabajando para resolverlos. Por favor, vuelve en unos minutos.",
"click-to-copy": "Click para copiar",
"project-id": "ID de proyecto",
"save-changes": "Guardar cambios",
"saved": "Guardado",
"drop-zone": "Arrastra y suelta un archivo .env, .json o .yml aquí.",
"drop-zone-keys": "Arrastra y suelta un archivo .env, .json, or .yml aquí para añadir más secrets.",
"role": "Rol",
"role_admin": "admin",
"display-name": "Nombre visible",
"environment": "Entorno",
"expired-in": "Expira en",
"language": "Idioma",
"search": "Buscar...",
"note": "Nota",
"view-more": "Ver más",
"end-of-history": "Fin del historial",
"select-event": "Selecciona un evento",
"event": "Evento",
"user": "Usuario",
"source": "Fuente",
"time": "Hora",
"timestamp": "Marca temporal"
},
"dashboard": {
"title": "Secrets",
"og-title": "Gestiona tus archivos .env en segundos",
"og-description": "Infisical es una solución cifrada de extremo a extremo que habilita a los equipos a compartir archivos .env de forma sencilla.",
"search-keys": "Buscar claves...",
"add-key": "Añadir clave",
"personal": "Personal",
"personal-description": "Las claves personales solo son visibles para ti",
"shared": "Compartido",
"shared-description": "Claves compartidas son visibles para todo tu equipo",
"make-shared": "Hacer compartida",
"make-personal": "Hacer personal",
"add-secret": "Añadir una nueva clave",
"check-docs": {
"button": "Comprueba la documentación",
"title": "¡Buen trabajo!",
"line1": "Enhorabuena por añadir claves.",
"line2": "Averigua como usarlo desde tu código."
},
"sidebar": {
"secret": "Secret",
"key": "Clave",
"value": "valor",
"override": "Sobreescribir valor con el valor personal",
"version-history": "Historial de versiones",
"comments": "Comentarios & Notas",
"personal-explanation": "Esta clave es personal. No será compartida con ninguno de tus compañeros.",
"generate-random-hex": "Generar Hex aleatorio",
"digits": "dígitos",
"delete-key-dialog": {
"title": "Eliminar clave",
"confirm-delete-message": "¿Estás seguro de que quieres eliminar esta clave? Esta operación no se puede deshacer."
}
}
},
"integrations": {
"title": "Integraciones del proyecto",
"description": "Gestiona tus integraciones de Infisical con aplicaciones de terceros.",
"no-integrations1": "No tienes ninguna integración configurada. Cuando las tengas, aparecerán aquí.",
"no-integrations2": "Para empezar haz click en cualquiera de las opciones siguientes. Se necesitan tan solo 5 pasos.",
"available": "Integraciones con la nube",
"available-text1": "Haz click en la integración que quieras conectar. Esto hará que las variables de entorno se configuren automáticamente en los servicios de terceros seleccionados.",
"available-text2": "Nota: en la integración con Heroku, por motivos de seguridad, es imposible mantener el cifrado de extremo a extremo. En teoría, esto permite a Infisical descifrar tus variables de entorno. En la práctica, te podemos asegurar que esto nunca va a suceder. El núcleo del servicio Infisical siempre estará cifrado de extremo a extremo. Si tienes dudas, escríbenos a support@infisical.com.",
"cloud-integrations": "Integraciones con la nube",
"framework-integrations": "Integraciones con frameworks",
"click-to-start": "Haz click en una integración para empezar a sincronizar las claves.",
"click-to-setup": "Haz click en un framework para ver las instrucciones de uso.",
"grant-access-to-secrets": "Autorizar Infisical el acceso a tus claves",
"why-infisical-needs-access": "La mayoría de las integraciones en la nube requieren a Infisical tener permiso para descifrar tus claves, para que puedan ser enviadas.",
"grant-access-button": "Autorizar acceso"
},
"login": {
"title": "Iniciar sesión",
"og-title": "Iniciar sesión en Infisical",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"login": "Iniciar sesión",
"need-account": "¿Necesitas una cuenta de Infisical?",
"create-account": "Crea una cuenta",
"forgot-password": "¿Has olvidado tu contraseña?",
"error-login": "Datos incorrectos."
},
"mfa": {
"title": "Registrarse",
"og-title": "Reemplaza los archivos .env con una línea de código. Regístrate en Infisical en solo 3 minutos.",
"og-description": "Infisical es una plataforma sencilla cifrada de extremo a extremo que permite a equipos sincronizar y gestionar API-keys y variables de entorno. Funciona con Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Registrarse",
"already-have-account": "¿Ya tienes una cuenta? Inicia sesión",
"forgot-password": "¿Has olvidado tu contraseña?",
"verify": "Verificar",
"step1-start": "Vamos a empezar",
"step1-privacy": "Al crear la cuenta, aceptas nuestros Términos y has leído y comprendido nuestra Política de privacidad.",
"step1-submit": "Empezar",
"step2-message": "Hemos enviado un código a",
"step2-code-error": "Oops. Tu código es incorrecto. Intentos restantes:",
"step2-resend-alert": "¿No ves el código?",
"step2-resend-submit": "Volver a enviar",
"step2-resend-progress": "Reenviando...",
"step2-spam-alert": "Asegúrate de comprobar la carpeta de spam.",
"step3-message": "¡Casi hemos terminado!",
"step4-message": "Guarda tu Kit de emergencia",
"step4-description1": "Si pierdes el acceso a tu cuenta, tu Kit de emergencia es la única forma de iniciar sesión.",
"step4-description2": "Te recomendamos que lo descargues y lo guardes en un sitio seguro.",
"step4-description3": "Contiene tu Clave secreta, a la que no tenemos acceso y tampoco podemos recuperar si la pierdes.",
"step4-download": "Descargar PDF",
"step5-send-invites": "Enviar invitaciones",
"step5-invite-team": "Invita a tu equipo",
"step5-subtitle": "Infisical está pensado para usarlo con tus compañeros. Invítalos a probarlo.",
"step5-skip": "Saltar"
},
"nav": {
"support": {
"slack": "Unirse al Slack",
"docs": "Leer documentación",
"issue": "Abrir una Github Issue",
"email": "Envíanos un correo electrónico"
},
"user": {
"signed-in-as": "INICIADO COMO",
"current-organization": "ORGANIZACIÓN ACTUAL",
"usage-billing": "Uso & Facturación",
"invite": "Invitar miembros",
"other-organizations": "OTRA ORGANIZACIÓN"
},
"menu": {
"project": "PROYECTO",
"secrets": "Claves",
"members": "Miembros",
"integrations": "Integraciones",
"project-settings": "Configuración del proyecto"
}
},
"section": {
"api-key": {
"api-keys": "Tokens de servicio",
"api-keys-description": "Cada token de servicio es específico para ti, para cada proyecto y para cada entorno en este proyecto.",
"add-new": "Añadir nuevo token",
"add-dialog": {
"title": "Añadir una API Key",
"description": "Especifica el nombre y el período de expiración. Cuando una API key es generada, solo podrás verla una vez hasta que desaparezca. Asegúrate de guardarla en algún lado.",
"name": "Nombre de la API Key",
"add": "Añadir API Key",
"copy-service-token": "Copia tu API key",
"copy-service-token-description": "Una vez que cierres esta ventana, no volverás a ver tu API key"
}
},
"incident": {
"incident-contacts": "Contactos de incidencias",
"incident-contacts-description": "Estos contactos serán notificados en caso de una incidencia grave.",
"no-incident-contacts": "No se han encontrado contactos para incidencias.",
"add-contact": "Añadir contacto",
"add-dialog": {
"title": "Añadir un contacto de incidencias",
"description": "Este contacto será notificado en el caso de una incidencia grave.",
"add-incident": "Añadir contacto de incidencias"
}
},
"members": {
"add-member": "Añadir miembro",
"org-members": "Miembros de la organización",
"org-members-description": "Gestiona los miembros de tu organización. Estos usuarios podrán ser agrupados en proyectos más tarde.",
"search-members": "Buscar miembros...",
"add-dialog": {
"add-member-to-project": "Añadir un miembro al proyecto",
"already-all-invited": "Todos los uaurios en tu organización han sido invitados.",
"add-user-org-first": "Añadir primero más usuarios a la organización.",
"user-will-email": "El usuario recibirá un correo electrónico con la invitación.",
"looking-add": "<0>Si quieres añadir usuarios a tu organización, haz</0><1>click aquí</1>",
"add-user-to-org": "Añadir usuarios a la organización"
}
},
"password": {
"password": "Contraseña",
"change": "Cambiar contraseña",
"current": "Contraseña actual",
"current-wrong": "La contraseña actual puede puede que sea incorrecta",
"new": "Nueva contraseña",
"validate-base": "La contraseña debe contener como mínimo:",
"validate-length": "14 caracteres",
"validate-case": "1 letra en minúsculas",
"validate-number": "1 número"
},
"token": {
"service-tokens": "Tokens de servicio",
"service-tokens-description": "Cada token de servicio es específico para ti, para cada proyecto y para cada entorno en este proyectos.",
"add-new": "Añadir nuevo token",
"add-dialog": {
"title": "Añade un nuevo token de servicio para {{target}}",
"description": "Cuando se genera un token, solo podrás verlo una vez antes de que desaparezca. Asegúrate de guardarlo en algún lugar.",
"name": "Nombre del token de servicio",
"add": "Añadir token de servicio",
"copy-service-token": "Copiar tu token de servicio",
"copy-service-token-description": "Una vez cierres esta ventana, no volverás a ver tu token de nuevo"
}
}
},
"settings": {
"members": {
"title": "Miembros del proyecto",
"description": "Esta página muestra los miembros del proyecto seleccionado, y permite modificar sus permisos."
},
"org": {
"title": "Configuración de la organización",
"description": "Gestiona los miembros de tu organización. Estos usuarios podrán ser gestionados en proyectos más adelante."
},
"personal": {
"title": "Preferencias personales",
"description": "Visualiza y gestiona aquí tu información personal.",
"emergency": {
"name": "Kit de emergencia",
"text1": "Tu Kit de emergencia contiene la información que necesitarás para iniciar sesión en tu cuenta de Infisical.",
"text2": "Solo el último Kit de emergencia descargado es válido. Para conseguir uno nuevo, introduce tu contraseña.",
"download": "Descargar Kit de emergencia"
},
"change-language": "Cambiar idioma",
"api-keys": {
"title": "API Keys",
"description": "Gestiona tus API Keys personales para acceder a la API de Infisical.",
"add-new": "Añadir"
}
},
"project": {
"title": "Configuración de proyecto",
"description": "Esta configuración solo afecta al proyecto seleccionado.",
"danger-zone": "Zona de peligro",
"delete-project": "Eliminar proyecto",
"project-to-delete": "Proyecto a eliminar",
"danger-zone-note": "Tan pronto como elimines el proyecto, no podrás volver atrás. Esto eliminará todas las claves. Si aún quieres hacerlo, introduce el nombre del proyecto a continuación.",
"delete-project-note": "Nota: Solo puedes eliminar un proyecto si tienes más de uno",
"project-id-description": "Para integrar Infisical en tu aplicación y obtener la inyección automática de variables de entorno, debes usar el siguiente ID de Proyecto.",
"project-id-description2": "Para más guías, incluyendo ejemplos de código en diferentes lenguajes y frameworks, visita ",
"auto-generated": "Este es el ID único y autogenerado de proyecto. No se puede modificar.",
"docs": "Documentación de Infisical",
"auto-capitalization": "Mayúsculas automáticas",
"auto-capitalization-description": "De acuerdo con los estándares, Infisical pondrá en mayúsculas tus claves. Si quieres desactivar esta funcionalidad, lo puedes hacer aquí."
}
},
"signup": {
"title": "Registrarse",
"og-title": "Reemplaza los archivos .env con una línea de código. Regístrate en Infisical en solo 3 minutos.",
"og-description": "Infisical es una plataforma sencilla cifrada de extremo a extremo que permite a equipos sincronizar y gestionar API-keys y variables de entorno. Funciona con Node.js, Next.js, Gatsby, Nest.js...",
"signup": "Registrarse",
"already-have-account": "¿Ya tienes una cuenta? Inicia sesión",
"forgot-password": "¿Has olvidado tu contraseña?",
"verify": "Verificar",
"step1-start": "Vamos a empezar",
"step1-privacy": "Al crear la cuenta, aceptas nuestros Términos y has leído y comprendido nuestra Política de privacidad.",
"step1-submit": "Empezar",
"step2-message": "Hemos enviado un código a",
"step2-code-error": "Oops. Tu código es incorrecto. Intentos restantes:",
"step2-resend-alert": "¿No ves el código?",
"step2-resend-submit": "Volver a enviar",
"step2-resend-progress": "Reenviando...",
"step2-spam-alert": "Asegúrate de comprobar la carpeta de spam.",
"step3-message": "¡Casi hemos terminado!",
"step4-message": "Guarda tu Kit de emergencia",
"step4-description1": "Si pierdes el acceso a tu cuenta, tu Kit de emergencia es la única forma de iniciar sesión.",
"step4-description2": "Te recomendamos que lo descargues y lo guardes en un sitio seguro.",
"step4-description3": "Contiene tu Clave secreta, a la que no tenemos acceso y tampoco podemos recuperar si la pierdes.",
"step4-download": "Descargar PDF",
"step5-send-invites": "Enviar invitaciones",
"step5-invite-team": "Invita a tu equipo",
"step5-subtitle": "Infisical está pensado para usarlo con tus compañeros. Invítalos a probarlo.",
"step5-skip": "Saltar"
}
}

@ -1,11 +0,0 @@
{
"title": "Journaux d'activité",
"subtitle": "Historique des événements pour ce projet Infisical.",
"event": {
"readSecrets": "Secrets Visualisés",
"updateSecrets": "Secrets Mis à jour",
"addSecrets": "Secrets Ajoutés",
"deleteSecrets": "Secrets Supprimés"
},
"ip-address": "Adresse IP"
}

@ -1,28 +0,0 @@
{
"title": "Utilisation et Facturation",
"description": "Voir et gérer l'abonnement de votre organisation ici",
"subscription": "Abonnement",
"starter": {
"name": "Starter",
"price-explanation": "jusqu'à 5 membres de l'équipe",
"text": "Gérez n'importe quel projet jusqu'à 5 membres gratuitement!",
"subtext": "$5 par membre / mois par la suite."
},
"professional": {
"name": "Professionnel",
"price-explanation": "/membre/mois",
"subtext": "Comprend des projets et des membres illimités.",
"text": "Suivez la gestion clé à mesure que vous grandissez."
},
"enterprise": {
"name": "Entreprise",
"text": "Suivez la gestion clé à mesure que vous grandissez."
},
"current-usage": "Utilisation actuelle",
"free": "Gratuit",
"downgrade": "Rétrograder",
"upgrade": "Améliorer",
"learn-more": "En savoir plus",
"custom-pricing": "Prix personnalisés",
"schedule-demo": "Planifier une démo"
}

@ -1,34 +0,0 @@
{
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "Un projet avec ce nom existe déjà.",
"no-mobile": " Pour utiliser Infisical, veuillez vous connecter avec un appareil avec des dimensions plus grandes. ",
"email": "Email",
"password": "Mot de passe",
"first-name": "Prénom",
"last-name": "Nom",
"logout": "Déconnexion",
"validate-required": "Veuillez saisir votre {{name}}",
"maintenance-alert": "Nous rencontrons des difficultés techniques mineures. Nous travaillons sur leurs résolution dès maintenant. Revenez dans quelques minutes.",
"click-to-copy": "Cliquez pour copiez",
"project-id": "Identifiant du Projet",
"save-changes": "Sauvegarder les modifications",
"saved": "Enregistrée",
"drop-zone": "Glissez et déposez un fichier .env ou .yml ici.",
"drop-zone-keys": "Glissez et déposez un fichier .env ou .yml ici pour ajouter plus de clés.",
"role": "Rôle",
"role_admin": "administrateur",
"display-name": "Nom d'affichage",
"environment": "Environnement",
"expired-in": "Expire dans",
"language": "Langue",
"search": "Recherche...",
"note": "Note",
"view-more": "Voir plus",
"end-of-history": "Fin de l'historique",
"select-event": "Sélectionnez un événement",
"event": "Événement",
"user": "Utilisateur",
"source": "Source",
"time": "Heure",
"timestamp": "Horodatage"
}

@ -1,36 +0,0 @@
{
"title": "Secrets",
"og-title": "Gérez vos fichiers .env rapidement",
"og-description": "Infisical une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer leurs fichiers .env.",
"search-keys": "Recherche les clefs...",
"add-key": "Ajouter une clef",
"personal": "Personnel",
"personal-description": "Les clés personnelles ne sont visibles que pour vous",
"shared": "Partagé",
"shared-description": "Les clés partagées sont visibles à toute votre équipe",
"make-shared": "Rendre Partagé",
"make-personal": "Rendre Personnel",
"add-secret": "Ajouter un nouveau secret",
"check-docs": {
"button": "Vérifier la documentation",
"title": "Bon travail!",
"line1": "Félicitations pour avoir ajouté plus de secrets.",
"line2": "Voici comment les connecter à votre base de code."
},
"sidebar": {
"secret": "Secret",
"key": "Clef",
"value": "Valeur",
"override": "Remplacer la valeur avec une valeur personnelle",
"version-history": "Historique des versions",
"comments": "Commentaires & Notes",
"personal-explanation": "Ce secret est personnel. Il n'est partagé avec aucun de vos coéquipiers.",
"generate-random-hex": "Générer un Hex aléatoire",
"digits": "chiffres",
"delete-key-dialog": {
"title": "Supprimer la clef",
"confirm-delete-message": "Êtes-vous sûr de vouloir supprimer ce secret? Cela ne peut pas être annulé."
}
}
}

@ -1,16 +0,0 @@
{
"title": "Intégrations de Projet",
"description": "Gérez vos intégrations d'Infisical avec des services tiers.",
"no-integrations1": "Vous n'avez pas encore d'intégration. Quand vous en aurez, elles apparaîtront ici.",
"no-integrations2": "Pour commencer, cliquez sur l'une des options ci-dessous. La configuration se fait en 5 clics.",
"available": "Intégrations de plate-forme et cloud",
"available-text1": "Cliquez sur l'intégration que vous souhaitez connecter. Cela permettra à vos variables d'environnement de circuler automatiquement dans les services tiers sélectionnés.",
"available-text2": "Remarque: Lors d'une intégration avec Heroku, pour des raisons de sécurité, il est impossible de maintenir le chiffrage de bout en bout. En théorie, cela permet à Infisical de déchiffrer les variables d'environnement. En pratique, nous pouvons vous assurer que cela ne sera jamais fait, et cela nous permet de protéger vos secrets des mauvais acteurs en ligne. Le service Infisical de base restera toujours chiffré de bout en bout. Pour toutes vos intérogations, contactez support@infisical.com.",
"cloud-integrations": "Intégrations Cloud",
"framework-integrations": "Intégrations Framework",
"click-to-start": "Cliquez sur une intégration pour commencer à synchroniser les secrets avec elle.",
"click-to-setup": "Cliquez sur un framework pour obtenir les instructions de configuration.",
"grant-access-to-secrets": "Accordez un accès Infisical à vos secrets",
"why-infisical-needs-access": "La plupart des intégrations cloud nécessitent qu'Infisical puisse déchiffrer vos secrets afin qu'ils puissent être transmis.",
"grant-access-button": "Autoriser l'accès"
}

@ -1,10 +0,0 @@
{
"title": "Connexion",
"og-title": "Connectez-vous à Infisical",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout permettant aux équipes de synchroniser et de gérer leurs fichiers .env.",
"login": "Se connecter",
"need-account": "Besoin d'un compte Infisical?",
"create-account": "Créer un compte",
"forgot-password": "Mot de passe oublié?",
"error-login": "Mauvais identifiants."
}

@ -1,28 +0,0 @@
{
"title": "S'inscrire",
"og-title": "Remplacez les fichiers .env par 1 ligne de code. Inscrivez-vous à Infisical en 3 minutes.",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer des clefs API et des variables d'environnement. Fonctionne avec Node.js, Next.js, Gatsby, Nest.js ...",
"signup": "S'inscrire",
"already-have-account": "Déjà inscris? Se connecter",
"forgot-password": "Mot de passe oublié?",
"verify": "Vérifier",
"step1-start": "Bon, on commence!",
"step1-privacy": "En créant votre compte, vous acceptez nos conditions et avez lu et reconnu notre politique de confidentialité.",
"step1-submit": "C'est parti",
"step2-message": "Nous avons envoyé un email de vérification à",
"step2-code-error": "Oops. Votre code est faux. Essais restants:",
"step2-resend-alert": "Vous ne voyez pas le code?",
"step2-resend-submit": "Renvoyer",
"step2-resend-progress": "Envoie en cours...",
"step2-spam-alert": "Assurez-vous de vérifier vos spams.",
"step3-message": "Nous y sommes presque!",
"step4-message": "Enregistrez votre kit d'urgence",
"step4-description1": "Si vous n'arrivez plus à vous connecter à votre compte, votre kit d'urgence est le seul moyen d'y arriver.",
"step4-description2": "Nous vous recommandons de le télécharger et de le garder en sécurité.",
"step4-description3": "Il contient votre clef secrète que nous ne pouvons pas récupérer pour vous si vous la perdez.",
"step4-download": "Téléchargez le PDF",
"step5-send-invites": "Envoyer les invitations",
"step5-invite-team": "Invitez votre équipe",
"step5-subtitle": "Infisical a pour but d'être utilisé avec vos coéquipiers. Invitez-les à le tester.",
"step5-skip": "Passer"
}

@ -1,22 +0,0 @@
{
"support": {
"slack": "[NEW] Rejoignez le forum Slack",
"docs": "Lire les documentations",
"issue": "Ouvrir une issue Github",
"email": "Envoyez-nous un email"
},
"user": {
"signed-in-as": "CONNECTÉ EN TANT QUE",
"current-organization": "ORGANISATION ACTUELLE",
"usage-billing": "Utilisation & Facturation",
"invite": "Inviter des membres",
"other-organizations": "AUTRE ORGANISATION"
},
"menu": {
"project": "PROJET",
"secrets": "Secrets",
"members": "Membres",
"integrations": "Intégrations",
"project-settings": "Paramètres du Projet"
}
}

@ -1,11 +0,0 @@
{
"incident-contacts": "Contacts Incidents",
"incident-contacts-description": "Ces contacts seront informés dans le cas improbable d'un incident grave.",
"no-incident-contacts": "Aucun contact incident trouvé.",
"add-contact": "Ajouter un contact",
"add-dialog": {
"title": "Ajouter un contact incident",
"description": "Ce contact sera informé dans le cas improbable d'un incident grave.",
"add-incident": "Ajouter un contact incident"
}
}

@ -1,14 +0,0 @@
{
"add-member": "Ajouter un Membre",
"org-members": "Membres de l'organisation",
"org-members-description": "Gérer les membres de votre organisation. Ces utilisateurs pourraient ensuite être répartis en projets.",
"search-members": "Recherche des membres...",
"add-dialog": {
"add-member-to-project": "Ajoutez un membre à votre projet",
"already-all-invited": "Tous les utilisateurs de votre organisation sont déjà invités.",
"add-user-org-first": "Ajoutez d'abord plus d'utilisateurs à l'organisation.",
"user-will-email": "L'utilisateur recevra un email avec les instructions.",
"looking-add": "<0>Si vous cherchez à ajouter des utilisateurs à votre organisation,</0><1>cliquez ici</1>",
"add-user-to-org": "Ajouter des Utilisateurs à l'Organisation"
}
}

@ -1,11 +0,0 @@
{
"password": "Mot de passe",
"change": "Changer le mot de passe",
"current": "Mot de passe actuel",
"current-wrong": "Le mot de passe actuel peut être érroné",
"new": "Nouveau mot de passe",
"validate-base": "Le mot de passe doit contenir au moins:",
"validate-length": "14 caractères",
"validate-case": "1 caractère miniscule",
"validate-number": "1 chiffre"
}

@ -1,13 +0,0 @@
{
"service-tokens": "Jetons de service",
"service-tokens-description": "Chaque jeton de service vous est spécifique, à un certain projet et à un certain environnement dans ce projet.",
"add-new": "Ajouter un nouveau jeton",
"add-dialog": {
"title": "Ajouter un jeton de service pour {{target}}",
"description": "Spécifiez le nom, l'environnement et la période d'expiration. Lorsqu'un jeton est généré, vous ne pourrez le voir qu'une seule fois avant qu'il ne disparaisse. Assurez-vous de le sauvegarder quelque part.",
"name": "Nom du jeton de service",
"add": "Ajouter un jeton de service",
"copy-service-token": "Copiez votre jeton de service",
"copy-service-token-description": "Une fois que vous aurez fermé cette fenêtre, vous ne reverrez plus jamais votre jeton de service"
}
}

@ -1,4 +0,0 @@
{
"title": "Membres du projet",
"description": "Cette page affiche les membres du projet sélectionné."
}

@ -1,4 +0,0 @@
{
"title": "Paramètres d'Organisation",
"description": "Gérer les membres de votre organisation. Ces utilisateurs pourraient ensuite être répartis en projets."
}

@ -1,11 +0,0 @@
{
"title": "Paramètres Personnels",
"description": "Consultez et gérez vos informations personnelles ici.",
"emergency": {
"name": "Kit d'urgence",
"text1": "Votre kit d'urgence contient les informations dont vous aurez besoin pour vous connecter à votre compte Infisical.",
"text2": "Seul le dernier kit d'urgence émis reste valide. Pour obtenir un nouveau kit d'urgence, vérifiez votre mot de passe.",
"download": "Télécharger le kit d'urgence"
},
"change-language": "Changer de langue"
}

@ -1,13 +0,0 @@
{
"title": "Paramètres du Projet",
"description": "Ces paramètres ne s'appliquent qu'au Projet actuellement sélectionné.",
"danger-zone": "Zone de danger",
"delete-project": "Supprimer le Projet",
"project-to-delete": "Projet à Supprimer",
"danger-zone-note": "Dès que vous supprimez ce projet, vous ne pourrez plus revenir en arrière. Cela supprimera immédiatement toutes les clefs. Si vous voulez toujours le faire, veuillez saisir le nom du projet ci-dessous.",
"delete-project-note": "Remarque: Vous ne pouvez supprimer qu'un projet que si vous en avez plus d'un.",
"project-id-description": "Pour intégrer Infisical dans votre base de code et obtenir une injection automatique de variables d'environnement, vous devez utiliser l'ID du projet suivant.",
"project-id-description2": "Pour plus de conseils, y compris des extraits de code pour diverses langues et frameworks, voir ",
"auto-generated": "Ceci est l'identifiant unique généré automatiquement pour votre projet. Il ne peut pas être modifié.",
"docs": "Documentation Infisical"
}

@ -1,28 +0,0 @@
{
"title": "S'inscrire",
"og-title": "Remplacez les fichiers .env par 1 ligne de code. Inscrivez-vous à Infisical en 3 minutes.",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer des clefs API et des variables d'environnement. Fonctionne avec Node.js, Next.js, Gatsby, Nest.js ...",
"signup": "S'inscrire",
"already-have-account": "Déjà inscris? Se connecter",
"forgot-password": "Mot de passe oublié?",
"verify": "Vérifier",
"step1-start": "Bon, on commence!",
"step1-privacy": "En créant votre compte, vous acceptez nos conditions et avez lu et reconnu notre politique de confidentialité.",
"step1-submit": "C'est parti",
"step2-message": "Nous avons envoyé un email de vérification à",
"step2-code-error": "Oops. Votre code est faux. Veuillez réessayer.",
"step2-resend-alert": "Vous ne voyez pas le code?",
"step2-resend-submit": "Renvoyer",
"step2-resend-progress": "Envoie en cours...",
"step2-spam-alert": "Assurez-vous de vérifier vos spams.",
"step3-message": "Nous y sommes presque!",
"step4-message": "Enregistrez votre kit d'urgence",
"step4-description1": "Si vous n'arrivez plus à vous connecter à votre compte, votre kit d'urgence est le seul moyen d'y arriver.",
"step4-description2": "Nous vous recommandons de le télécharger et de le garder en sécurité.",
"step4-description3": "Il contient votre clef secrète que nous ne pouvons pas récupérer pour vous si vous la perdez.",
"step4-download": "Téléchargez le PDF",
"step5-send-invites": "Envoyer les invitations",
"step5-invite-team": "Invitez votre équipe",
"step5-subtitle": "Infisical a pour but d'être utilisé avec vos coéquipiers. Invitez-les à le tester.",
"step5-skip": "Passer"
}

@ -0,0 +1,299 @@
{
"activity": {
"title": "Journaux d'activité",
"subtitle": "Historique des événements pour ce projet Infisical.",
"event": {
"readSecrets": "Secrets Visualisés",
"updateSecrets": "Secrets Mis à jour",
"addSecrets": "Secrets Ajoutés",
"deleteSecrets": "Secrets Supprimés"
},
"ip-address": "Adresse IP"
},
"billing": {
"title": "Utilisation et Facturation",
"description": "Voir et gérer l'abonnement de votre organisation ici",
"subscription": "Abonnement",
"starter": {
"name": "Starter",
"price-explanation": "jusqu'à 5 membres de l'équipe",
"text": "Gérez n'importe quel projet jusqu'à 5 membres gratuitement!",
"subtext": "$5 par membre / mois par la suite."
},
"professional": {
"name": "Professionnel",
"price-explanation": "/membre/mois",
"subtext": "Comprend des projets et des membres illimités.",
"text": "Suivez la gestion clé à mesure que vous grandissez."
},
"enterprise": {
"name": "Entreprise",
"text": "Suivez la gestion clé à mesure que vous grandissez."
},
"current-usage": "Utilisation actuelle",
"free": "Gratuit",
"downgrade": "Rétrograder",
"upgrade": "Améliorer",
"learn-more": "En savoir plus",
"custom-pricing": "Prix personnalisés",
"schedule-demo": "Planifier une démo"
},
"common": {
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "Un projet avec ce nom existe déjà.",
"no-mobile": " Pour utiliser Infisical, veuillez vous connecter avec un appareil avec des dimensions plus grandes. ",
"email": "Email",
"password": "Mot de passe",
"first-name": "Prénom",
"last-name": "Nom",
"logout": "Déconnexion",
"validate-required": "Veuillez saisir votre {{name}}",
"maintenance-alert": "Nous rencontrons des difficultés techniques mineures. Nous travaillons sur leurs résolution dès maintenant. Revenez dans quelques minutes.",
"click-to-copy": "Cliquez pour copiez",
"project-id": "Identifiant du Projet",
"save-changes": "Sauvegarder les modifications",
"saved": "Enregistrée",
"drop-zone": "Glissez et déposez un fichier .env ou .yml ici.",
"drop-zone-keys": "Glissez et déposez un fichier .env ou .yml ici pour ajouter plus de clés.",
"role": "Rôle",
"role_admin": "administrateur",
"display-name": "Nom d'affichage",
"environment": "Environnement",
"expired-in": "Expire dans",
"language": "Langue",
"search": "Recherche...",
"note": "Note",
"view-more": "Voir plus",
"end-of-history": "Fin de l'historique",
"select-event": "Sélectionnez un événement",
"event": "Événement",
"user": "Utilisateur",
"source": "Source",
"time": "Heure",
"timestamp": "Horodatage"
},
"dashboard": {
"title": "Secrets",
"og-title": "Gérez vos fichiers .env rapidement",
"og-description": "Infisical une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer leurs fichiers .env.",
"search-keys": "Recherche les clefs...",
"add-key": "Ajouter une clef",
"personal": "Personnel",
"personal-description": "Les clés personnelles ne sont visibles que pour vous",
"shared": "Partagé",
"shared-description": "Les clés partagées sont visibles à toute votre équipe",
"make-shared": "Rendre Partagé",
"make-personal": "Rendre Personnel",
"add-secret": "Ajouter un nouveau secret",
"check-docs": {
"button": "Vérifier la documentation",
"title": "Bon travail!",
"line1": "Félicitations pour avoir ajouté plus de secrets.",
"line2": "Voici comment les connecter à votre base de code."
},
"sidebar": {
"secret": "Secret",
"key": "Clef",
"value": "Valeur",
"override": "Remplacer la valeur avec une valeur personnelle",
"version-history": "Historique des versions",
"comments": "Commentaires & Notes",
"personal-explanation": "Ce secret est personnel. Il n'est partagé avec aucun de vos coéquipiers.",
"generate-random-hex": "Générer un Hex aléatoire",
"digits": "chiffres",
"delete-key-dialog": {
"title": "Supprimer la clef",
"confirm-delete-message": "Êtes-vous sûr de vouloir supprimer ce secret? Cela ne peut pas être annulé."
}
}
},
"integrations": {
"title": "Intégrations de Projet",
"description": "Gérez vos intégrations d'Infisical avec des services tiers.",
"no-integrations1": "Vous n'avez pas encore d'intégration. Quand vous en aurez, elles apparaîtront ici.",
"no-integrations2": "Pour commencer, cliquez sur l'une des options ci-dessous. La configuration se fait en 5 clics.",
"available": "Intégrations de plate-forme et cloud",
"available-text1": "Cliquez sur l'intégration que vous souhaitez connecter. Cela permettra à vos variables d'environnement de circuler automatiquement dans les services tiers sélectionnés.",
"available-text2": "Remarque: Lors d'une intégration avec Heroku, pour des raisons de sécurité, il est impossible de maintenir le chiffrage de bout en bout. En théorie, cela permet à Infisical de déchiffrer les variables d'environnement. En pratique, nous pouvons vous assurer que cela ne sera jamais fait, et cela nous permet de protéger vos secrets des mauvais acteurs en ligne. Le service Infisical de base restera toujours chiffré de bout en bout. Pour toutes vos intérogations, contactez support@infisical.com.",
"cloud-integrations": "Intégrations Cloud",
"framework-integrations": "Intégrations Framework",
"click-to-start": "Cliquez sur une intégration pour commencer à synchroniser les secrets avec elle.",
"click-to-setup": "Cliquez sur un framework pour obtenir les instructions de configuration.",
"grant-access-to-secrets": "Accordez un accès Infisical à vos secrets",
"why-infisical-needs-access": "La plupart des intégrations cloud nécessitent qu'Infisical puisse déchiffrer vos secrets afin qu'ils puissent être transmis.",
"grant-access-button": "Autoriser l'accès"
},
"login": {
"title": "Connexion",
"og-title": "Connectez-vous à Infisical",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout permettant aux équipes de synchroniser et de gérer leurs fichiers .env.",
"login": "Se connecter",
"need-account": "Besoin d'un compte Infisical?",
"create-account": "Créer un compte",
"forgot-password": "Mot de passe oublié?",
"error-login": "Mauvais identifiants."
},
"mfa": {
"title": "S'inscrire",
"og-title": "Remplacez les fichiers .env par 1 ligne de code. Inscrivez-vous à Infisical en 3 minutes.",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer des clefs API et des variables d'environnement. Fonctionne avec Node.js, Next.js, Gatsby, Nest.js ...",
"signup": "S'inscrire",
"already-have-account": "Déjà inscris? Se connecter",
"forgot-password": "Mot de passe oublié?",
"verify": "Vérifier",
"step1-start": "Bon, on commence!",
"step1-privacy": "En créant votre compte, vous acceptez nos conditions et avez lu et reconnu notre politique de confidentialité.",
"step1-submit": "C'est parti",
"step2-message": "Nous avons envoyé un email de vérification à",
"step2-code-error": "Oops. Votre code est faux. Essais restants:",
"step2-resend-alert": "Vous ne voyez pas le code?",
"step2-resend-submit": "Renvoyer",
"step2-resend-progress": "Envoie en cours...",
"step2-spam-alert": "Assurez-vous de vérifier vos spams.",
"step3-message": "Nous y sommes presque!",
"step4-message": "Enregistrez votre kit d'urgence",
"step4-description1": "Si vous n'arrivez plus à vous connecter à votre compte, votre kit d'urgence est le seul moyen d'y arriver.",
"step4-description2": "Nous vous recommandons de le télécharger et de le garder en sécurité.",
"step4-description3": "Il contient votre clef secrète que nous ne pouvons pas récupérer pour vous si vous la perdez.",
"step4-download": "Téléchargez le PDF",
"step5-send-invites": "Envoyer les invitations",
"step5-invite-team": "Invitez votre équipe",
"step5-subtitle": "Infisical a pour but d'être utilisé avec vos coéquipiers. Invitez-les à le tester.",
"step5-skip": "Passer"
},
"nav": {
"support": {
"slack": "[NEW] Rejoignez le forum Slack",
"docs": "Lire les documentations",
"issue": "Ouvrir une issue Github",
"email": "Envoyez-nous un email"
},
"user": {
"signed-in-as": "CONNECTÉ EN TANT QUE",
"current-organization": "ORGANISATION ACTUELLE",
"usage-billing": "Utilisation & Facturation",
"invite": "Inviter des membres",
"other-organizations": "AUTRE ORGANISATION"
},
"menu": {
"project": "PROJET",
"secrets": "Secrets",
"members": "Membres",
"integrations": "Intégrations",
"project-settings": "Paramètres du Projet"
}
},
"section": {
"incident": {
"incident-contacts": "Contacts Incidents",
"incident-contacts-description": "Ces contacts seront informés dans le cas improbable d'un incident grave.",
"no-incident-contacts": "Aucun contact incident trouvé.",
"add-contact": "Ajouter un contact",
"add-dialog": {
"title": "Ajouter un contact incident",
"description": "Ce contact sera informé dans le cas improbable d'un incident grave.",
"add-incident": "Ajouter un contact incident"
}
},
"members": {
"add-member": "Ajouter un Membre",
"org-members": "Membres de l'organisation",
"org-members-description": "Gérer les membres de votre organisation. Ces utilisateurs pourraient ensuite être répartis en projets.",
"search-members": "Recherche des membres...",
"add-dialog": {
"add-member-to-project": "Ajoutez un membre à votre projet",
"already-all-invited": "Tous les utilisateurs de votre organisation sont déjà invités.",
"add-user-org-first": "Ajoutez d'abord plus d'utilisateurs à l'organisation.",
"user-will-email": "L'utilisateur recevra un email avec les instructions.",
"looking-add": "<0>Si vous cherchez à ajouter des utilisateurs à votre organisation,</0><1>cliquez ici</1>",
"add-user-to-org": "Ajouter des Utilisateurs à l'Organisation"
}
},
"password": {
"password": "Mot de passe",
"change": "Changer le mot de passe",
"current": "Mot de passe actuel",
"current-wrong": "Le mot de passe actuel peut être érroné",
"new": "Nouveau mot de passe",
"validate-base": "Le mot de passe doit contenir au moins:",
"validate-length": "14 caractères",
"validate-case": "1 caractère miniscule",
"validate-number": "1 chiffre"
},
"token": {
"service-tokens": "Jetons de service",
"service-tokens-description": "Chaque jeton de service vous est spécifique, à un certain projet et à un certain environnement dans ce projet.",
"add-new": "Ajouter un nouveau jeton",
"add-dialog": {
"title": "Ajouter un jeton de service pour {{target}}",
"description": "Spécifiez le nom, l'environnement et la période d'expiration. Lorsqu'un jeton est généré, vous ne pourrez le voir qu'une seule fois avant qu'il ne disparaisse. Assurez-vous de le sauvegarder quelque part.",
"name": "Nom du jeton de service",
"add": "Ajouter un jeton de service",
"copy-service-token": "Copiez votre jeton de service",
"copy-service-token-description": "Une fois que vous aurez fermé cette fenêtre, vous ne reverrez plus jamais votre jeton de service"
}
}
},
"settings": {
"members": {
"title": "Membres du projet",
"description": "Cette page affiche les membres du projet sélectionné."
},
"org": {
"title": "Paramètres d'Organisation",
"description": "Gérer les membres de votre organisation. Ces utilisateurs pourraient ensuite être répartis en projets."
},
"personal": {
"title": "Paramètres Personnels",
"description": "Consultez et gérez vos informations personnelles ici.",
"emergency": {
"name": "Kit d'urgence",
"text1": "Votre kit d'urgence contient les informations dont vous aurez besoin pour vous connecter à votre compte Infisical.",
"text2": "Seul le dernier kit d'urgence émis reste valide. Pour obtenir un nouveau kit d'urgence, vérifiez votre mot de passe.",
"download": "Télécharger le kit d'urgence"
},
"change-language": "Changer de langue"
},
"project": {
"title": "Paramètres du Projet",
"description": "Ces paramètres ne s'appliquent qu'au Projet actuellement sélectionné.",
"danger-zone": "Zone de danger",
"delete-project": "Supprimer le Projet",
"project-to-delete": "Projet à Supprimer",
"danger-zone-note": "Dès que vous supprimez ce projet, vous ne pourrez plus revenir en arrière. Cela supprimera immédiatement toutes les clefs. Si vous voulez toujours le faire, veuillez saisir le nom du projet ci-dessous.",
"delete-project-note": "Remarque: Vous ne pouvez supprimer qu'un projet que si vous en avez plus d'un.",
"project-id-description": "Pour intégrer Infisical dans votre base de code et obtenir une injection automatique de variables d'environnement, vous devez utiliser l'ID du projet suivant.",
"project-id-description2": "Pour plus de conseils, y compris des extraits de code pour diverses langues et frameworks, voir ",
"auto-generated": "Ceci est l'identifiant unique généré automatiquement pour votre projet. Il ne peut pas être modifié.",
"docs": "Documentation Infisical"
}
},
"signup": {
"title": "S'inscrire",
"og-title": "Remplacez les fichiers .env par 1 ligne de code. Inscrivez-vous à Infisical en 3 minutes.",
"og-description": "Infisical, une plate-forme simple et chiffré de bout en bout qui permet aux équipes de synchroniser et de gérer des clefs API et des variables d'environnement. Fonctionne avec Node.js, Next.js, Gatsby, Nest.js ...",
"signup": "S'inscrire",
"already-have-account": "Déjà inscris? Se connecter",
"forgot-password": "Mot de passe oublié?",
"verify": "Vérifier",
"step1-start": "Bon, on commence!",
"step1-privacy": "En créant votre compte, vous acceptez nos conditions et avez lu et reconnu notre politique de confidentialité.",
"step1-submit": "C'est parti",
"step2-message": "Nous avons envoyé un email de vérification à",
"step2-code-error": "Oops. Votre code est faux. Veuillez réessayer.",
"step2-resend-alert": "Vous ne voyez pas le code?",
"step2-resend-submit": "Renvoyer",
"step2-resend-progress": "Envoie en cours...",
"step2-spam-alert": "Assurez-vous de vérifier vos spams.",
"step3-message": "Nous y sommes presque!",
"step4-message": "Enregistrez votre kit d'urgence",
"step4-description1": "Si vous n'arrivez plus à vous connecter à votre compte, votre kit d'urgence est le seul moyen d'y arriver.",
"step4-description2": "Nous vous recommandons de le télécharger et de le garder en sécurité.",
"step4-description3": "Il contient votre clef secrète que nous ne pouvons pas récupérer pour vous si vous la perdez.",
"step4-download": "Téléchargez le PDF",
"step5-send-invites": "Envoyer les invitations",
"step5-invite-team": "Invitez votre équipe",
"step5-subtitle": "Infisical a pour but d'être utilisé avec vos coéquipiers. Invitez-les à le tester.",
"step5-skip": "Passer"
}
}

@ -1,28 +0,0 @@
{
"title": "요금제 & 결제",
"description": "이곳에서 조직의 구독을 확인하고 관리할 수 있어요.",
"subscription": "구독",
"starter": {
"name": "스타터",
"price-explanation": "5명의 팀 맴버까지",
"text": "어떤 프로젝트든 다섯명의 맴버까지 무료로 이용할 수 있어요!",
"subtext": "$5명/달 로 바뀔 예정입니다."
},
"professional": {
"name": "전문가",
"price-explanation": "/맴버/달",
"subtext": "무제한의 프로젝트와 맴버",
"text": "조직의 성장에 따라 유연하게 시크릿을 관리하세요."
},
"enterprise": {
"name": "엔터프라이즈",
"text": "조직의 성장에 따라 유연하게 시크릿을 관리하세요."
},
"current-usage": "현재 요금제",
"free": "무료",
"downgrade": "다운그레이드",
"upgrade": "업그레이드",
"learn-more": "자세히 알아보기",
"custom-pricing": "커스텀 가격",
"schedule-demo": "데모 예약하기"
}

@ -1,26 +0,0 @@
{
"head-title": "{{title}} | Infisical",
"error_project-already-exists": "동일한 이름을 가진 프로젝트가 이미 존재해요.",
"no-mobile": " Infisical을 사용하려면, 큰 화면을 가진 디바이스로 로그인하여 주세요.",
"email": "메일",
"password": "비밀번호",
"first-name": "이름",
"last-name": "성",
"logout": "로그아웃",
"validate-required": "{{name}} 을/를 입력하세요.",
"maintenance-alert": "We are experiencing minor technical difficulties. We are working on solving it right now. Please come back in a few minutes.",
"click-to-copy": "클릭하여 복사하기",
"project-id": "프로젝트 ID",
"save-changes": "변경사항 저장하기",
"saved": "저장됨",
"drop-zone": ".env 파일을 이곳에 드래그 & 드롭 하세요.",
"drop-zone-keys": "이곳에 .env 파일을 드래그 & 드롭 하여 더 많은 키들을 추가하세요.",
"role": "Role",
"role_admin": "admin",
"display-name": "표시 이름",
"environment": "환경",
"expired-in": "만료 기한:",
"language": "언어",
"search": "검색하기...",
"note": "Note"
}

@ -1,30 +0,0 @@
{
"title": "시크릿",
"og-title": "빠르게 .env 파일을 관리하세요",
"og-description": "Infisical은 팀원과 .env파일을 공유할 수 있는 심플한 end-to-end 암호화 플렛폼입니다.",
"search-keys": "키 검색하기...",
"add-key": "키 추가하기",
"personal": "개인",
"personal-description": "개인 키는 오직 본인만 볼 수 있어요",
"shared": "공유",
"shared-description": "공유 키는 팀 전체가 볼 수 있어요",
"make-shared": "공유로 만들기",
"make-personal": "개인으로 만들기",
"check-docs": {
"button": "문서 확인하기",
"title": "좋았어요!",
"line1": "더 많은 시크릿들을 추가한 것을 축하합니다.",
"line2": "코드와 연결하는 사용하는 방법을 한번 알아보지 않을래요?"
},
"sidebar": {
"secret": "Secret",
"key": "Key",
"value": "Value",
"override": "Override value with a personal value",
"version-history": "Version History",
"comments": "Comments & Notes",
"personal-explanation": "This secret is personal. It is not shared with any of your teammates.",
"generate-random-hex": "Generate Random Hex",
"digits": "digits"
}
}

@ -1,16 +0,0 @@
{
"available": "사용 가능한 연동",
"available-text1": "연결하고 싶은 서비스를 클릭하세요. 환경 변수가 선택한 외부 서비스와 자동으로 연동됩니다.",
"available-text2": "참고: Heroku와의 연동에서는 보안상의 이유로 End-To-End 암호화를 유지하는 것이 불가능합니다. 이론적으로는 Infisical이 시크릿을 읽는것이 가능하지만, 절대 그러지 않는다고 확신할 수 있습니다. 핵심 Infisical 서비스는 항상 End-To-End 암호화 상태를 유지합니다. 질문이 있으면 support@infisical.com으로 문의하세요.",
"description": "외부 서비스와 함께 Infisical을 연동하고 관리하세요",
"no-integrations1": "연동된 서비스가 없어요. 연동하게 된다면 이곳에서 표시돼요.",
"no-integrations2": "시작하려면, 아래의 옵션을 클릭하세요. 대체로 5분 이내로 가능해요.",
"title": "프로젝트 연동",
"cloud-integrations": "Cloud Integrations",
"framework-integrations": "Framework Integrations",
"click-to-start": "Click on an integration to begin syncing secrets to it.",
"click-to-setup": "Click on a framework to get the setup instructions.",
"grant-access-to-secrets": "Grant Infisical access to your secrets",
"why-infisical-needs-access": "Most cloud integrations require Infisical to be able to decrypt your secrets so they can be forwarded over.",
"grant-access-button": "Grant access"
}

@ -1,8 +0,0 @@
{
"title": "로그인",
"og-title": "Infisical에 로그인하기",
"og-description": "Infisical a simple end-to-end encrypted platform that enables teams to sync and manage their .env files.",
"login": "로그인",
"need-account": "Infisical계정이 필요하신가요?",
"create-account": "회원가입 하기"
}

@ -1,21 +0,0 @@
{
"title": "회원가입",
"og-title": "한줄의 코드르 .env파일을 교체하세요. 3분이면 가입할 수 있어요.",
"og-description": "Infisical은 팀원과 .env파일을 공유하고 연동할 수 있는 심플한 end-to-end 암호화 플렛폼입니다. Node.js, Next.js, Gatsby, Nest.js 와 같은 다양한 플렛폼에서 작동해요.",
"signup": "회원가입",
"already-have-account": "이미 계정이 있나요? 로그인하기",
"forgot-password": "비밀번호를 잊으셨나요?",
"verify": "인증",
"step1-start": "시작하기",
"step1-privacy": "회원가입시 약관과 개인 정보 보호 정책을 읽고 동의한 것으로 간주합니다.",
"step1-submit": "시작하기",
"step2-message": "<email>{{email}}</email><wrapper>로 인증 메일을 전송하였습니다</wrapper><email>{{email}}</email>",
"step2-code-error": "코드가 잘못된 것 같아요. 남은 시도:",
"step2-spam-alert": "스팸함에 메일이 있지는 않은지 확인하세요",
"step3-message": "거의다 끝났어요!",
"step4-message": "긴급복구 키트 저장하기",
"step4-description1": "계정이 잠겼을 경우 비상 키트를 사용하여 로그인할 수 있어요.",
"step4-description2": "다운로드 후 안전한 곳에 보관하는 것을 추천합니다.",
"step4-description3": "분실시 접근하거나 복구할 수 없는 시크릿 키가 포함되어 있어요.",
"step4-download": "PDF 다운로드"
}

@ -1,22 +0,0 @@
{
"support": {
"slack": "[NEW] 슬랙 포럼에 가입하기",
"docs": "문서 보기",
"issue": "깃허브 이슈 열기",
"email": "Infisical팀에게 메일 보내기"
},
"user": {
"signed-in-as": "다음으로 로그인됨",
"current-organization": "현재 조직",
"usage-billing": "요금제 & 결제",
"invite": "맴버 초대하기",
"other-organizations": "다른 조직"
},
"menu": {
"project": "프로젝트",
"secrets": "시크릿",
"members": "맴버",
"integrations": "연동",
"project-settings": "프로젝트 설정"
}
}

@ -1,11 +0,0 @@
{
"add-contact": "연락처 추가하기",
"add-dialog": {
"add-incident": "비상 연락처 추가하기",
"description": "중대한 일이 생길 경우, 이 연락처로 알림이 전송됩니다.",
"title": "비상 연락처 추가하기"
},
"incident-contacts": "비상 연락망",
"incident-contacts-description": "중대한 일이 생길 경우, 아래의 연락처로 알림이 전송됩니다.",
"no-incident-contacts": "비상 연락망이 존재하지 않아요."
}

@ -1,14 +0,0 @@
{
"add-member": "맴버 추가하기",
"org-members": "조직 맴버",
"search-members": "맴버를 검색하기...",
"add-dialog": {
"add-member-to-project": "프로젝트에 맴버 추가하기",
"already-all-invited": "조직의 모든 유저가 이미 초대되었습니다.",
"add-user-org-first": "유저를 먼저 조직에 추가해 주세요.",
"user-will-email": "유저는 안내가 포함된 메일을 받게 됩니다.",
"looking-add": "<0>조직에 유저를 추가하고 싶다면,</0><1>여기를 클릭하세요</1>",
"add-user-to-org": "조직에 유저 추가하기"
},
"org-members-description": "조직의 맴버들을 관리하세요."
}

@ -1,11 +0,0 @@
{
"password": "비밀번호",
"change": "비밀번호 변경",
"current": "현재 비밀번호",
"new": "새 비밀번호",
"current-wrong": "현재 비밀번호가 잘못되었어요",
"validate-base": "비밀번호는 다음 조건을 만족해야 합니다:",
"validate-length": "14 글자 이상",
"validate-case": "1개 이상의 소문자",
"validate-number": "1개 이상의 숫자"
}

@ -1,13 +0,0 @@
{
"add-dialog": {
"add": "서비스 토큰 추가하기",
"copy-service-token": "서비스 토큰 복사하기",
"copy-service-token-description": "팝업을 닫을 시 다시는 토큰을 확인할 수 없어요.",
"description": "이름, 환경, 만료일을 지정하세요. 토큰이 생성되면 최초 한번만 볼 수 있어요. 안전한 곳에 저장하세요.",
"name": "서비스 토큰 이름",
"title": "{{target}}의 토큰 추가하기"
},
"add-new": "새 토큰 추가하기",
"service-tokens": "서비스 토큰",
"service-tokens-description": "모든 서비스 토큰은 프로젝트 및 환경에 따라 다릅니다."
}

@ -1,4 +0,0 @@
{
"title": "맴버 설정",
"description": "선택한 프로젝트의 맴버를 확인하세요."
}

@ -1,4 +0,0 @@
{
"title": "조직 설정",
"description": "조직의 맴버를 관리하세요."
}

@ -1,11 +0,0 @@
{
"title": "개인 설정",
"description": "계정 및 기본적인 설정을 확인하고 변경하세요.",
"emergency": {
"name": "긴급복구 키트",
"text1": "긴급복구 키트는 Infisical계정에 로그인 할 수 있는 정보를 가지고 있어요.",
"text2": "오직 마지막으로 발급한 긴급복구 키트만 사용 가능해요. 새로운 긴급복구 키트를 받으려면, 비밀번호를 입력하세요.",
"download": "긴급복구 키트 다운로드"
},
"change-language": "언어 변경하기"
}

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