mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-09-22 13:39:35 +00:00
Merge branch 'heads/main' into fix/helm-charts-improvements
This commit is contained in:
661
backend/package-lock.json
generated
661
backend/package-lock.json
generated
@@ -9,15 +9,15 @@
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-secrets-manager": "^3.267.0",
|
||||
"@aws-sdk/client-secrets-manager": "^3.281.0",
|
||||
"@godaddy/terminus": "^4.11.2",
|
||||
"@octokit/rest": "^19.0.5",
|
||||
"@sentry/node": "^7.39.0",
|
||||
"@sentry/tracing": "^7.19.0",
|
||||
"@sentry/node": "^7.40.0",
|
||||
"@sentry/tracing": "^7.39.0",
|
||||
"@types/crypto-js": "^4.1.1",
|
||||
"@types/libsodium-wrappers": "^0.7.10",
|
||||
"await-to-js": "^3.0.0",
|
||||
"aws-sdk": "^2.1311.0",
|
||||
"aws-sdk": "^2.1324.0",
|
||||
"axios": "^1.1.3",
|
||||
"axios-retry": "^3.4.0",
|
||||
"bcrypt": "^5.1.0",
|
||||
@@ -38,7 +38,7 @@
|
||||
"jsrp": "^0.2.4",
|
||||
"libsodium-wrappers": "^0.7.10",
|
||||
"lodash": "^4.17.21",
|
||||
"mongoose": "^6.7.2",
|
||||
"mongoose": "^6.10.2",
|
||||
"nodemailer": "^6.8.0",
|
||||
"posthog-node": "^2.5.4",
|
||||
"query-string": "^7.1.3",
|
||||
@@ -232,15 +232,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager": {
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.279.0.tgz",
|
||||
"integrity": "sha512-1cEXfqDUiS44DSXueb4QhHKa1K9WVWP/FqxYUB11xV0p5jElX88JVHyNPK/XsVbh9S6nS/MGPBIDbVA2y/mt5g==",
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.281.0.tgz",
|
||||
"integrity": "sha512-vL+LygNDoCja/47pFwSnI3tCWfy5SGHlz6C1whcszmfl81gXyuHNlAK8RXVRiKhnD11zmCsHJhZyYSfTz5RErQ==",
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/client-sts": "3.279.0",
|
||||
"@aws-sdk/client-sts": "3.281.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/credential-provider-node": "3.279.0",
|
||||
"@aws-sdk/credential-provider-node": "3.281.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
@@ -277,10 +277,211 @@
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.281.0.tgz",
|
||||
"integrity": "sha512-3RvO5zClQhu37w9VMLoHPGk58S3y8Spb7XX8rW51bm5TUglYQskQ0X2VLEUW/7ZGx/peokHws9Z9+w5yGq5sdA==",
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso-oidc": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.281.0.tgz",
|
||||
"integrity": "sha512-P6zf9pDuxApVoCYStAg7L8BU9AcWI8PxfLSX4r2WnmcQropxzPJ3op1j9nvbwwBDMFWephijVY4AVp8MqPcPyg==",
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sts": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.281.0.tgz",
|
||||
"integrity": "sha512-w8QomyhCVEArRcXgOkjbofiS/PLEKWRAyYBovjMS1cGhns2ZYJXFgHNgr3VGE54TghUc5dR1CqKuBKKM4ThrgA==",
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/credential-provider-node": "3.281.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-sdk-sts": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-signing": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"fast-xml-parser": "4.1.2",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-ini": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.281.0.tgz",
|
||||
"integrity": "sha512-H99nhMhHImQKgNhHKYc6usTS6UK8KzCcVGpILLVTuP97YlrYAMFAVstA3Xk6mZ28JAbHVXvI6vJjkMNOzCSKCA==",
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
"@aws-sdk/credential-provider-process": "3.272.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.281.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.272.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-node": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.281.0.tgz",
|
||||
"integrity": "sha512-jhddd+lJp8G8hBJ+6glmXjfWJT3nxiE1aliH3fBC4RR3D+1kRXc99Xg6mbUb8bm+GrVZ4gzfiqSgg+ByKjd7xA==",
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.281.0",
|
||||
"@aws-sdk/credential-provider-process": "3.272.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.281.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.272.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-sso": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.281.0.tgz",
|
||||
"integrity": "sha512-IqJnpXuLpJYoSCf/Rt66/CPVTjfkam3z9+ZvlQJV+VbK+vGj276qEtTmSN3XPZZgF1XbWptvkzIWDszLhHiZmg==",
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso": "3.281.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/token-providers": "3.281.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/token-providers": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.281.0.tgz",
|
||||
"integrity": "sha512-36Vg/F6Edm7qdjcTeNVON+sK2edgHhmhTtAEjWcuUk5AX/Et+Ate/A2N8HD3nxwlAcgidfnBC9SHYJatbhcEnQ==",
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso-oidc": "3.281.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-sso": {
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.279.0.tgz",
|
||||
"integrity": "sha512-599Y5wOrkpjD6p0BTs0X4+Ge9O7jlAPJ2ttI9lfhT2/UEZyqoJHajJs1pMJV75oeZklPOBi8G9jnZcMVJgRpvQ==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -323,6 +524,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.279.0.tgz",
|
||||
"integrity": "sha512-tC9xKGo3z/HQbJDMvaUrnBSSRX7sOX2YUA2OpJ3T1TTfylLTO70OKjg1G4OMFNiPpJsHonwD7Iud+rnMnUKI0g==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -365,6 +567,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.279.0.tgz",
|
||||
"integrity": "sha512-y/cI5Gg5WWqmSSDQftCT26wOLu0HSuPY1u6Q4Q97FBIfRC3hYztjYdUDHuTu6qPPT+tdsnWOUy2tr3qamVSQ4g==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -469,6 +672,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.279.0.tgz",
|
||||
"integrity": "sha512-FCpr3/khMTb2pWLMC138wU7HzcpkrjejrBNfCJSUu7Emxm039UMLjT2JObnRKxidKlz58oYBRayVIbBYRWREcg==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
@@ -488,6 +692,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.279.0.tgz",
|
||||
"integrity": "sha512-7D8ETopCt3H+x2BEPMEhzc4dcNtSK7umnRdgfiTGRjcQSVPh5Whq/tDIAtNj2D+PmLgu3e+Hk7jrXkaMCDlxMw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
@@ -522,6 +727,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.279.0.tgz",
|
||||
"integrity": "sha512-u8ZHz9Sv7sAv2vllyzcdgcO1pC5pa2UuoYKfz9J8hqLHc8VJYtYQ6WJvi4GoA55VDPk87pyVYz9t6ATntsukaw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso": "3.279.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
@@ -905,6 +1111,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.279.0.tgz",
|
||||
"integrity": "sha512-bsUlZSizTXZ8Pehdatcioi8VphxYn7fRjo5L083peOvBjoL+9WSGyP74PLrFLNwA35QxddwOqgnpQZoE1heuPQ==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso-oidc": "3.279.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
@@ -2781,32 +2988,14 @@
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
||||
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
||||
},
|
||||
"node_modules/@sentry/core": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.38.0.tgz",
|
||||
"integrity": "sha512-+hXh/SO3Ie6WC2b+wi01xLhyVREdkRXS5QBmCiv3z2ks2HvYXp7PoKSXJvNKiwCP+pBD+enOnM1YEzM2yEy5yw==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.38.0",
|
||||
"@sentry/utils": "7.38.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.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.39.0.tgz",
|
||||
"integrity": "sha512-oe1OBxgs6t/FizjxkSPtuvJv5wJMO+mLENZkiE0PpBD56JyZrWK48kYIt2ccWAfk6Vh235/oIpmqET150xB4lQ==",
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz",
|
||||
"integrity": "sha512-S2pcLBUsCg3+WYlyQbXKPey3H1yaZPt9fpJTPAoabbidYXweBAbtFjSCRwPFwCQMzWusWxlYEwWRT77C07pHVg==",
|
||||
"dependencies": {
|
||||
"@sentry/core": "7.39.0",
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/utils": "7.39.0",
|
||||
"@sentry/core": "7.40.0",
|
||||
"@sentry/types": "7.40.0",
|
||||
"@sentry/utils": "7.40.0",
|
||||
"cookie": "^0.4.1",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"lru_map": "^0.3.3",
|
||||
@@ -2817,12 +3006,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/node/node_modules/@sentry/core": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz",
|
||||
"integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==",
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.40.0.tgz",
|
||||
"integrity": "sha512-OPAobQG0GTY++r5LWUcOA1lS+2TY2Lmw/i5s4kL9WbY+f08dbLNEGNBObY7/V98OL4f7OG+nWaPFybgM7kqUTQ==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/utils": "7.39.0",
|
||||
"@sentry/types": "7.40.0",
|
||||
"@sentry/utils": "7.40.0",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"engines": {
|
||||
@@ -2830,19 +3019,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/node/node_modules/@sentry/types": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz",
|
||||
"integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==",
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.40.0.tgz",
|
||||
"integrity": "sha512-dIbqBenbmDx1F8pvfC11C88J83ecwumUhV+YOIxcmVd1fmlPF2hXWZ01+NTkTDkCu341sJx4wPQogByFy8FwGA==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/node/node_modules/@sentry/utils": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz",
|
||||
"integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==",
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.40.0.tgz",
|
||||
"integrity": "sha512-ZdCbTpAXPiVVfvNJVftnDhsctOui71MDUhVIdLkgg4Cuic+WHGPRmmZ+H6uZdp7vRaeB+Uvnn5+t2iSAVo/mAA==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/types": "7.40.0",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"engines": {
|
||||
@@ -2855,13 +3044,46 @@
|
||||
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
|
||||
},
|
||||
"node_modules/@sentry/tracing": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.38.0.tgz",
|
||||
"integrity": "sha512-ejXJp8oOT64MVtBzqdECUUaNzKbpu25St8Klub1i4Sm7xO+ZjDQDI4TIHvWojZvtkwQ3F4jcsCclc8KuyJunyQ==",
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.39.0.tgz",
|
||||
"integrity": "sha512-bSRdUMzp/n54J+Qf4hHC4WVvdv4vZEv3NEbNNsnIZNAhnVAq6QB9VzsGRJZ12PqxJU3StDuqLiZFVOmGxETCkQ==",
|
||||
"dependencies": {
|
||||
"@sentry/core": "7.38.0",
|
||||
"@sentry/types": "7.38.0",
|
||||
"@sentry/utils": "7.38.0",
|
||||
"@sentry/core": "7.39.0",
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/utils": "7.39.0",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/tracing/node_modules/@sentry/core": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz",
|
||||
"integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/utils": "7.39.0",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/tracing/node_modules/@sentry/types": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz",
|
||||
"integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/tracing/node_modules/@sentry/utils": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz",
|
||||
"integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.39.0",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"engines": {
|
||||
@@ -2873,31 +3095,6 @@
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
|
||||
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
|
||||
},
|
||||
"node_modules/@sentry/types": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.38.0.tgz",
|
||||
"integrity": "sha512-NKOALR6pNUMzUrsk2m+dkPrO8uGNvNh1LD0BCPswKNjC2qHo1h1mDGCgBmF9+EWyii8ZoACTIsxvsda+MBf97Q==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@sentry/utils": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.38.0.tgz",
|
||||
"integrity": "sha512-MgbI3YmYuyyhUtvcXkgGBqjOW+nuLLNGUdWCK+C4kObf8VbLt3dSE/7SEMT6TSHLYQmxs2BxFgx5Agn97m68kQ==",
|
||||
"dependencies": {
|
||||
"@sentry/types": "7.38.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",
|
||||
@@ -3874,9 +4071,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/aws-sdk": {
|
||||
"version": "2.1323.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1323.0.tgz",
|
||||
"integrity": "sha512-GoLwk2SuG9A6eWgc1mGmm548dklheDmkeptHRw2RhCvq2GZqlc4AzStFUjUURy4O4NQmd2ZiQIoeseue4RwurA==",
|
||||
"version": "2.1324.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1324.0.tgz",
|
||||
"integrity": "sha512-7T9Jn6qtzCANdqRcdhxZ9Fx31/U+h/VPFxEU3+sFEnC7WtGtRlgmsJOY2lIdFKRXkHYT3Jw5MqDyjnb/i1QqbA==",
|
||||
"dependencies": {
|
||||
"buffer": "4.9.2",
|
||||
"events": "1.1.1",
|
||||
@@ -7427,9 +7624,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/mongoose": {
|
||||
"version": "6.10.0",
|
||||
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.0.tgz",
|
||||
"integrity": "sha512-0zrKDEnmNscYyAyN94smo2LlJ63gaezKHpHM+KQ+6EiAgAnah5Kt3hQSYzOTQX/63YNdT1oJXiLlB5LqTdcjUw==",
|
||||
"version": "6.10.2",
|
||||
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.2.tgz",
|
||||
"integrity": "sha512-9/AbheG2PiVVBWLx3S6LgCIEQNdMppjdnp/WH9nLGjFzjJeb9LiHNPEtsOGOm8qXmuICHMdbn5iUFAsLWWvpEw==",
|
||||
"dependencies": {
|
||||
"bson": "^4.7.0",
|
||||
"kareem": "2.5.1",
|
||||
@@ -12423,15 +12620,15 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-secrets-manager": {
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.279.0.tgz",
|
||||
"integrity": "sha512-1cEXfqDUiS44DSXueb4QhHKa1K9WVWP/FqxYUB11xV0p5jElX88JVHyNPK/XsVbh9S6nS/MGPBIDbVA2y/mt5g==",
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.281.0.tgz",
|
||||
"integrity": "sha512-vL+LygNDoCja/47pFwSnI3tCWfy5SGHlz6C1whcszmfl81gXyuHNlAK8RXVRiKhnD11zmCsHJhZyYSfTz5RErQ==",
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/client-sts": "3.279.0",
|
||||
"@aws-sdk/client-sts": "3.281.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/credential-provider-node": "3.279.0",
|
||||
"@aws-sdk/credential-provider-node": "3.281.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
@@ -12463,12 +12660,194 @@
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"tslib": "^2.3.1",
|
||||
"uuid": "^8.3.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.281.0.tgz",
|
||||
"integrity": "sha512-3RvO5zClQhu37w9VMLoHPGk58S3y8Spb7XX8rW51bm5TUglYQskQ0X2VLEUW/7ZGx/peokHws9Z9+w5yGq5sdA==",
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-sso-oidc": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.281.0.tgz",
|
||||
"integrity": "sha512-P6zf9pDuxApVoCYStAg7L8BU9AcWI8PxfLSX4r2WnmcQropxzPJ3op1j9nvbwwBDMFWephijVY4AVp8MqPcPyg==",
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-sts": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.281.0.tgz",
|
||||
"integrity": "sha512-w8QomyhCVEArRcXgOkjbofiS/PLEKWRAyYBovjMS1cGhns2ZYJXFgHNgr3VGE54TghUc5dR1CqKuBKKM4ThrgA==",
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
"@aws-sdk/config-resolver": "3.272.0",
|
||||
"@aws-sdk/credential-provider-node": "3.281.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.272.0",
|
||||
"@aws-sdk/hash-node": "3.272.0",
|
||||
"@aws-sdk/invalid-dependency": "3.272.0",
|
||||
"@aws-sdk/middleware-content-length": "3.272.0",
|
||||
"@aws-sdk/middleware-endpoint": "3.272.0",
|
||||
"@aws-sdk/middleware-host-header": "3.278.0",
|
||||
"@aws-sdk/middleware-logger": "3.272.0",
|
||||
"@aws-sdk/middleware-recursion-detection": "3.272.0",
|
||||
"@aws-sdk/middleware-retry": "3.272.0",
|
||||
"@aws-sdk/middleware-sdk-sts": "3.272.0",
|
||||
"@aws-sdk/middleware-serde": "3.272.0",
|
||||
"@aws-sdk/middleware-signing": "3.272.0",
|
||||
"@aws-sdk/middleware-stack": "3.272.0",
|
||||
"@aws-sdk/middleware-user-agent": "3.272.0",
|
||||
"@aws-sdk/node-config-provider": "3.272.0",
|
||||
"@aws-sdk/node-http-handler": "3.272.0",
|
||||
"@aws-sdk/protocol-http": "3.272.0",
|
||||
"@aws-sdk/smithy-client": "3.279.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"@aws-sdk/url-parser": "3.272.0",
|
||||
"@aws-sdk/util-base64": "3.208.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
"@aws-sdk/util-body-length-node": "3.208.0",
|
||||
"@aws-sdk/util-defaults-mode-browser": "3.279.0",
|
||||
"@aws-sdk/util-defaults-mode-node": "3.279.0",
|
||||
"@aws-sdk/util-endpoints": "3.272.0",
|
||||
"@aws-sdk/util-retry": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-browser": "3.272.0",
|
||||
"@aws-sdk/util-user-agent-node": "3.272.0",
|
||||
"@aws-sdk/util-utf8": "3.254.0",
|
||||
"fast-xml-parser": "4.1.2",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-ini": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.281.0.tgz",
|
||||
"integrity": "sha512-H99nhMhHImQKgNhHKYc6usTS6UK8KzCcVGpILLVTuP97YlrYAMFAVstA3Xk6mZ28JAbHVXvI6vJjkMNOzCSKCA==",
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
"@aws-sdk/credential-provider-process": "3.272.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.281.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.272.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-node": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.281.0.tgz",
|
||||
"integrity": "sha512-jhddd+lJp8G8hBJ+6glmXjfWJT3nxiE1aliH3fBC4RR3D+1kRXc99Xg6mbUb8bm+GrVZ4gzfiqSgg+ByKjd7xA==",
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.281.0",
|
||||
"@aws-sdk/credential-provider-process": "3.272.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.281.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.272.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-sso": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.281.0.tgz",
|
||||
"integrity": "sha512-IqJnpXuLpJYoSCf/Rt66/CPVTjfkam3z9+ZvlQJV+VbK+vGj276qEtTmSN3XPZZgF1XbWptvkzIWDszLhHiZmg==",
|
||||
"requires": {
|
||||
"@aws-sdk/client-sso": "3.281.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/token-providers": "3.281.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/token-providers": {
|
||||
"version": "3.281.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.281.0.tgz",
|
||||
"integrity": "sha512-36Vg/F6Edm7qdjcTeNVON+sK2edgHhmhTtAEjWcuUk5AX/Et+Ate/A2N8HD3nxwlAcgidfnBC9SHYJatbhcEnQ==",
|
||||
"requires": {
|
||||
"@aws-sdk/client-sso-oidc": "3.281.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.272.0",
|
||||
"@aws-sdk/types": "3.272.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-sso": {
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.279.0.tgz",
|
||||
"integrity": "sha512-599Y5wOrkpjD6p0BTs0X4+Ge9O7jlAPJ2ttI9lfhT2/UEZyqoJHajJs1pMJV75oeZklPOBi8G9jnZcMVJgRpvQ==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -12508,6 +12887,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.279.0.tgz",
|
||||
"integrity": "sha512-tC9xKGo3z/HQbJDMvaUrnBSSRX7sOX2YUA2OpJ3T1TTfylLTO70OKjg1G4OMFNiPpJsHonwD7Iud+rnMnUKI0g==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -12547,6 +12927,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.279.0.tgz",
|
||||
"integrity": "sha512-y/cI5Gg5WWqmSSDQftCT26wOLu0HSuPY1u6Q4Q97FBIfRC3hYztjYdUDHuTu6qPPT+tdsnWOUy2tr3qamVSQ4g==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "3.0.0",
|
||||
"@aws-crypto/sha256-js": "3.0.0",
|
||||
@@ -12636,6 +13017,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.279.0.tgz",
|
||||
"integrity": "sha512-FCpr3/khMTb2pWLMC138wU7HzcpkrjejrBNfCJSUu7Emxm039UMLjT2JObnRKxidKlz58oYBRayVIbBYRWREcg==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
@@ -12652,6 +13034,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.279.0.tgz",
|
||||
"integrity": "sha512-7D8ETopCt3H+x2BEPMEhzc4dcNtSK7umnRdgfiTGRjcQSVPh5Whq/tDIAtNj2D+PmLgu3e+Hk7jrXkaMCDlxMw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.272.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.272.0",
|
||||
@@ -12680,6 +13063,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.279.0.tgz",
|
||||
"integrity": "sha512-u8ZHz9Sv7sAv2vllyzcdgcO1pC5pa2UuoYKfz9J8hqLHc8VJYtYQ6WJvi4GoA55VDPk87pyVYz9t6ATntsukaw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/client-sso": "3.279.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
@@ -12985,6 +13369,7 @@
|
||||
"version": "3.279.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.279.0.tgz",
|
||||
"integrity": "sha512-bsUlZSizTXZ8Pehdatcioi8VphxYn7fRjo5L083peOvBjoL+9WSGyP74PLrFLNwA35QxddwOqgnpQZoE1heuPQ==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/client-sso-oidc": "3.279.0",
|
||||
"@aws-sdk/property-provider": "3.272.0",
|
||||
@@ -14376,16 +14761,44 @@
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
||||
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
||||
},
|
||||
"@sentry/core": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.38.0.tgz",
|
||||
"integrity": "sha512-+hXh/SO3Ie6WC2b+wi01xLhyVREdkRXS5QBmCiv3z2ks2HvYXp7PoKSXJvNKiwCP+pBD+enOnM1YEzM2yEy5yw==",
|
||||
"@sentry/node": {
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz",
|
||||
"integrity": "sha512-S2pcLBUsCg3+WYlyQbXKPey3H1yaZPt9fpJTPAoabbidYXweBAbtFjSCRwPFwCQMzWusWxlYEwWRT77C07pHVg==",
|
||||
"requires": {
|
||||
"@sentry/types": "7.38.0",
|
||||
"@sentry/utils": "7.38.0",
|
||||
"@sentry/core": "7.40.0",
|
||||
"@sentry/types": "7.40.0",
|
||||
"@sentry/utils": "7.40.0",
|
||||
"cookie": "^0.4.1",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"lru_map": "^0.3.3",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"@sentry/core": {
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.40.0.tgz",
|
||||
"integrity": "sha512-OPAobQG0GTY++r5LWUcOA1lS+2TY2Lmw/i5s4kL9WbY+f08dbLNEGNBObY7/V98OL4f7OG+nWaPFybgM7kqUTQ==",
|
||||
"requires": {
|
||||
"@sentry/types": "7.40.0",
|
||||
"@sentry/utils": "7.40.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"@sentry/types": {
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.40.0.tgz",
|
||||
"integrity": "sha512-dIbqBenbmDx1F8pvfC11C88J83ecwumUhV+YOIxcmVd1fmlPF2hXWZ01+NTkTDkCu341sJx4wPQogByFy8FwGA=="
|
||||
},
|
||||
"@sentry/utils": {
|
||||
"version": "7.40.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.40.0.tgz",
|
||||
"integrity": "sha512-ZdCbTpAXPiVVfvNJVftnDhsctOui71MDUhVIdLkgg4Cuic+WHGPRmmZ+H6uZdp7vRaeB+Uvnn5+t2iSAVo/mAA==",
|
||||
"requires": {
|
||||
"@sentry/types": "7.40.0",
|
||||
"tslib": "^1.9.3"
|
||||
}
|
||||
},
|
||||
"tslib": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
|
||||
@@ -14393,17 +14806,14 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@sentry/node": {
|
||||
"@sentry/tracing": {
|
||||
"version": "7.39.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.39.0.tgz",
|
||||
"integrity": "sha512-oe1OBxgs6t/FizjxkSPtuvJv5wJMO+mLENZkiE0PpBD56JyZrWK48kYIt2ccWAfk6Vh235/oIpmqET150xB4lQ==",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.39.0.tgz",
|
||||
"integrity": "sha512-bSRdUMzp/n54J+Qf4hHC4WVvdv4vZEv3NEbNNsnIZNAhnVAq6QB9VzsGRJZ12PqxJU3StDuqLiZFVOmGxETCkQ==",
|
||||
"requires": {
|
||||
"@sentry/core": "7.39.0",
|
||||
"@sentry/types": "7.39.0",
|
||||
"@sentry/utils": "7.39.0",
|
||||
"cookie": "^0.4.1",
|
||||
"https-proxy-agent": "^5.0.0",
|
||||
"lru_map": "^0.3.3",
|
||||
"tslib": "^1.9.3"
|
||||
},
|
||||
"dependencies": {
|
||||
@@ -14438,45 +14848,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"@sentry/tracing": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.38.0.tgz",
|
||||
"integrity": "sha512-ejXJp8oOT64MVtBzqdECUUaNzKbpu25St8Klub1i4Sm7xO+ZjDQDI4TIHvWojZvtkwQ3F4jcsCclc8KuyJunyQ==",
|
||||
"requires": {
|
||||
"@sentry/core": "7.38.0",
|
||||
"@sentry/types": "7.38.0",
|
||||
"@sentry/utils": "7.38.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/types": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.38.0.tgz",
|
||||
"integrity": "sha512-NKOALR6pNUMzUrsk2m+dkPrO8uGNvNh1LD0BCPswKNjC2qHo1h1mDGCgBmF9+EWyii8ZoACTIsxvsda+MBf97Q=="
|
||||
},
|
||||
"@sentry/utils": {
|
||||
"version": "7.38.0",
|
||||
"resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.38.0.tgz",
|
||||
"integrity": "sha512-MgbI3YmYuyyhUtvcXkgGBqjOW+nuLLNGUdWCK+C4kObf8VbLt3dSE/7SEMT6TSHLYQmxs2BxFgx5Agn97m68kQ==",
|
||||
"requires": {
|
||||
"@sentry/types": "7.38.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": {
|
||||
"version": "0.25.24",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz",
|
||||
@@ -15226,9 +15597,9 @@
|
||||
"integrity": "sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g=="
|
||||
},
|
||||
"aws-sdk": {
|
||||
"version": "2.1323.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1323.0.tgz",
|
||||
"integrity": "sha512-GoLwk2SuG9A6eWgc1mGmm548dklheDmkeptHRw2RhCvq2GZqlc4AzStFUjUURy4O4NQmd2ZiQIoeseue4RwurA==",
|
||||
"version": "2.1324.0",
|
||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1324.0.tgz",
|
||||
"integrity": "sha512-7T9Jn6qtzCANdqRcdhxZ9Fx31/U+h/VPFxEU3+sFEnC7WtGtRlgmsJOY2lIdFKRXkHYT3Jw5MqDyjnb/i1QqbA==",
|
||||
"requires": {
|
||||
"buffer": "4.9.2",
|
||||
"events": "1.1.1",
|
||||
@@ -17914,9 +18285,9 @@
|
||||
}
|
||||
},
|
||||
"mongoose": {
|
||||
"version": "6.10.0",
|
||||
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.0.tgz",
|
||||
"integrity": "sha512-0zrKDEnmNscYyAyN94smo2LlJ63gaezKHpHM+KQ+6EiAgAnah5Kt3hQSYzOTQX/63YNdT1oJXiLlB5LqTdcjUw==",
|
||||
"version": "6.10.2",
|
||||
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.2.tgz",
|
||||
"integrity": "sha512-9/AbheG2PiVVBWLx3S6LgCIEQNdMppjdnp/WH9nLGjFzjJeb9LiHNPEtsOGOm8qXmuICHMdbn5iUFAsLWWvpEw==",
|
||||
"requires": {
|
||||
"bson": "^4.7.0",
|
||||
"kareem": "2.5.1",
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-secrets-manager": "^3.267.0",
|
||||
"@aws-sdk/client-secrets-manager": "^3.281.0",
|
||||
"@godaddy/terminus": "^4.11.2",
|
||||
"@octokit/rest": "^19.0.5",
|
||||
"@sentry/node": "^7.39.0",
|
||||
"@sentry/tracing": "^7.19.0",
|
||||
"@sentry/tracing": "^7.39.0",
|
||||
"@sentry/node": "^7.40.0",
|
||||
"@types/crypto-js": "^4.1.1",
|
||||
"@types/libsodium-wrappers": "^0.7.10",
|
||||
"await-to-js": "^3.0.0",
|
||||
"aws-sdk": "^2.1311.0",
|
||||
"aws-sdk": "^2.1324.0",
|
||||
"axios": "^1.1.3",
|
||||
"axios-retry": "^3.4.0",
|
||||
"bcrypt": "^5.1.0",
|
||||
@@ -29,7 +29,7 @@
|
||||
"jsrp": "^0.2.4",
|
||||
"libsodium-wrappers": "^0.7.10",
|
||||
"lodash": "^4.17.21",
|
||||
"mongoose": "^6.7.2",
|
||||
"mongoose": "^6.10.2",
|
||||
"nodemailer": "^6.8.0",
|
||||
"posthog-node": "^2.5.4",
|
||||
"query-string": "^7.1.3",
|
||||
@@ -57,7 +57,7 @@
|
||||
"lint-and-fix": "eslint . --ext .ts --fix",
|
||||
"lint-staged": "lint-staged",
|
||||
"pretest": "docker compose -f test-resources/docker-compose.test.yml up -d",
|
||||
"test": "cross-env NODE_ENV=test jest --testTimeout=10000 --detectOpenHandles",
|
||||
"test": "cross-env NODE_ENV=test jest --verbose --testTimeout=10000 --detectOpenHandles",
|
||||
"test:ci": "npm test -- --watchAll=false --ci --reporters=default --reporters=jest-junit --reporters=github-actions --coverage --testLocationInResults --json --outputFile=coverage/report.json",
|
||||
"posttest": "docker compose -f test-resources/docker-compose.test.yml down"
|
||||
},
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
import { it, expect } from '@jest/globals';
|
||||
|
||||
it('should return true', () => {
|
||||
expect(true).toBeTruthy();
|
||||
});
|
||||
251
backend/tests/utils/crypto.test.ts
Normal file
251
backend/tests/utils/crypto.test.ts
Normal file
@@ -0,0 +1,251 @@
|
||||
import { describe, test, expect } from '@jest/globals';
|
||||
import {
|
||||
decryptAsymmetric,
|
||||
decryptSymmetric,
|
||||
encryptAsymmetric,
|
||||
encryptSymmetric
|
||||
} from '../../src/utils/crypto';
|
||||
|
||||
describe('Crypto', () => {
|
||||
describe('encryptAsymmetric', () => {
|
||||
describe('given all valid publicKey, privateKey and plaintext', () => {
|
||||
const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw=';
|
||||
const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0=';
|
||||
const plaintext = 'secret-message';
|
||||
|
||||
test('should encrypt plain text', () => {
|
||||
const result = encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
expect(result.ciphertext).toBeDefined();
|
||||
expect(result.nonce).toBeDefined();
|
||||
});
|
||||
});
|
||||
|
||||
describe('given empty/undefined publicKey', () => {
|
||||
let publicKey: string;
|
||||
const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0=';
|
||||
const plaintext = 'secret-message';
|
||||
|
||||
test('should throw error if publicKey is undefined', () => {
|
||||
expect(() => {
|
||||
encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
}).toThrowError('Failed to perform asymmetric encryption');
|
||||
});
|
||||
|
||||
test('should throw error if publicKey is empty string', () => {
|
||||
publicKey = '';
|
||||
expect(() => {
|
||||
encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
}).toThrowError('Failed to perform asymmetric encryption');
|
||||
});
|
||||
});
|
||||
|
||||
describe('given empty/undefined privateKey', () => {
|
||||
const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw=';
|
||||
let privateKey: string;
|
||||
const plaintext = 'secret-message';
|
||||
|
||||
test('should throw error if privateKey is undefined', () => {
|
||||
expect(() => {
|
||||
encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
}).toThrowError('Failed to perform asymmetric encryption');
|
||||
});
|
||||
|
||||
test('should throw error if privateKey is empty string', () => {
|
||||
privateKey = '';
|
||||
expect(() => {
|
||||
encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
}).toThrowError('Failed to perform asymmetric encryption');
|
||||
});
|
||||
});
|
||||
|
||||
describe('given undefined/invalid plaint text', () => {
|
||||
const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw=';
|
||||
const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0=';
|
||||
let plaintext: string;
|
||||
|
||||
test('should throw error if plaintext is undefined', () => {
|
||||
expect(() => {
|
||||
encryptAsymmetric({ plaintext, publicKey, privateKey });
|
||||
}).toThrowError('Failed to perform asymmetric encryption');
|
||||
});
|
||||
|
||||
test('should encrypt plaintext containing special characters', () => {
|
||||
plaintext = '131@#$%235!@#&*(&123sadfkjadjf';
|
||||
const result = encryptAsymmetric({
|
||||
plaintext,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
expect(result.ciphertext).toBeDefined();
|
||||
expect(result.nonce).toBeDefined();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('decryptAsymmetric', () => {
|
||||
describe('given all valid publicKey, privateKey and plaintext', () => {
|
||||
const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw=';
|
||||
const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0=';
|
||||
const plaintext = 'secret-message';
|
||||
|
||||
test('should decrypt the encrypted plaintext', () => {
|
||||
const encryptedResult = encryptAsymmetric({
|
||||
plaintext,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
const ciphertext = encryptedResult.ciphertext;
|
||||
const nonce = encryptedResult.nonce;
|
||||
|
||||
const decryptedResult = decryptAsymmetric({
|
||||
ciphertext,
|
||||
nonce,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
|
||||
expect(decryptedResult).toBeDefined();
|
||||
expect(decryptedResult).toEqual(plaintext);
|
||||
});
|
||||
});
|
||||
|
||||
describe('given ciphertext or nonce is modified before decrypt', () => {
|
||||
const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw=';
|
||||
const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0=';
|
||||
const plaintext = 'secret-message';
|
||||
|
||||
test('should throw error if ciphertext is modified', () => {
|
||||
const encryptedResult = encryptAsymmetric({
|
||||
plaintext,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
const ciphertext = '=12adfJ@#52af1231=123'; // modified
|
||||
const nonce = encryptedResult.nonce;
|
||||
|
||||
expect(() => {
|
||||
decryptAsymmetric({
|
||||
ciphertext,
|
||||
nonce,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
}).toThrowError('Failed to perform asymmetric decryption');
|
||||
});
|
||||
|
||||
test('should throw error if nonce is modified', () => {
|
||||
const encryptedResult = encryptAsymmetric({
|
||||
plaintext,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
const ciphertext = encryptedResult.ciphertext;
|
||||
const nonce = '=12adfJ@#52af1231=123'; // modified
|
||||
|
||||
expect(() => {
|
||||
decryptAsymmetric({
|
||||
ciphertext,
|
||||
nonce,
|
||||
publicKey,
|
||||
privateKey
|
||||
});
|
||||
}).toThrowError('Failed to perform asymmetric decryption');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('encryptSymmetric', () => {
|
||||
let plaintext: string;
|
||||
const key = '7e8ee7e5cc667b9c1829783ad31f36f4';
|
||||
|
||||
test('should encrypt plaintext with the given key', () => {
|
||||
plaintext = 'secret-message';
|
||||
const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key });
|
||||
expect(ciphertext).toBeDefined();
|
||||
expect(iv).toBeDefined();
|
||||
expect(tag).toBeDefined();
|
||||
});
|
||||
|
||||
test('should throw an error when plaintext is undefined', () => {
|
||||
const invalidKey = 'invalid-key';
|
||||
expect(() => {
|
||||
encryptSymmetric({ plaintext, key: invalidKey });
|
||||
}).toThrowError('Failed to perform symmetric encryption');
|
||||
});
|
||||
|
||||
test('should throw an error when invalid key is provided', () => {
|
||||
plaintext = 'secret-message';
|
||||
const invalidKey = 'invalid-key';
|
||||
|
||||
expect(() => {
|
||||
encryptSymmetric({ plaintext, key: invalidKey });
|
||||
}).toThrowError('Failed to perform symmetric encryption');
|
||||
});
|
||||
});
|
||||
|
||||
describe('decryptSymmetric', () => {
|
||||
const plaintext = 'secret-message';
|
||||
const key = '7e8ee7e5cc667b9c1829783ad31f36f4';
|
||||
const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key });
|
||||
|
||||
test('should decrypt encrypted plaintext', () => {
|
||||
const result = decryptSymmetric({
|
||||
ciphertext,
|
||||
iv,
|
||||
tag,
|
||||
key
|
||||
});
|
||||
|
||||
expect(result).toBeDefined();
|
||||
expect(result).toEqual(plaintext);
|
||||
});
|
||||
|
||||
test('should fail if ciphertext is modified', () => {
|
||||
const modifieldCiphertext = 'abcdefghijklmnopqrstuvwxyz';
|
||||
expect(() => {
|
||||
decryptSymmetric({
|
||||
ciphertext: modifieldCiphertext,
|
||||
iv,
|
||||
tag,
|
||||
key
|
||||
});
|
||||
}).toThrowError('Failed to perform symmetric decryption');
|
||||
});
|
||||
|
||||
test('should fail if iv is modified', () => {
|
||||
const modifiedIv = 'abcdefghijklmnopqrstuvwxyz';
|
||||
expect(() => {
|
||||
decryptSymmetric({
|
||||
ciphertext,
|
||||
iv: modifiedIv,
|
||||
tag,
|
||||
key
|
||||
});
|
||||
}).toThrowError('Failed to perform symmetric decryption');
|
||||
});
|
||||
|
||||
test('should fail if tag is modified', () => {
|
||||
const modifiedTag = 'abcdefghijklmnopqrstuvwxyz';
|
||||
expect(() => {
|
||||
decryptSymmetric({
|
||||
ciphertext,
|
||||
iv,
|
||||
tag: modifiedTag,
|
||||
key
|
||||
});
|
||||
}).toThrowError('Failed to perform symmetric decryption');
|
||||
});
|
||||
|
||||
test('should throw an error when decryption fails', () => {
|
||||
const invalidKey = 'invalid-key';
|
||||
expect(() => {
|
||||
decryptSymmetric({
|
||||
ciphertext,
|
||||
iv,
|
||||
tag,
|
||||
key: invalidKey
|
||||
});
|
||||
}).toThrowError('Failed to perform symmetric decryption');
|
||||
});
|
||||
});
|
||||
});
|
||||
29
backend/tests/utils/posthog.test.ts
Normal file
29
backend/tests/utils/posthog.test.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
import { describe, test, expect } from '@jest/globals';
|
||||
import { getChannelFromUserAgent } from '../../src/utils/posthog';
|
||||
|
||||
describe('posthog getChannelFromUserAgent', () => {
|
||||
test("should return 'web' when userAgent includes 'mozilla'", () => {
|
||||
const userAgent =
|
||||
'Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.5563.115 Mobile Safari/537.36';
|
||||
const channel = getChannelFromUserAgent(userAgent);
|
||||
expect(channel).toBe('web');
|
||||
});
|
||||
|
||||
test("should return 'cli'", () => {
|
||||
const userAgent = 'cli';
|
||||
const channel = getChannelFromUserAgent(userAgent);
|
||||
expect(channel).toBe('cli');
|
||||
});
|
||||
|
||||
test("should return 'k8-operator'", () => {
|
||||
const userAgent = 'k8-operator';
|
||||
const channel = getChannelFromUserAgent(userAgent);
|
||||
expect(channel).toBe('k8-operator');
|
||||
});
|
||||
|
||||
test('should return undefined if no userAgent', () => {
|
||||
const userAgent = undefined;
|
||||
const channel = getChannelFromUserAgent(userAgent);
|
||||
expect(channel).toBe('other');
|
||||
});
|
||||
});
|
||||
@@ -4,7 +4,10 @@ go 1.19
|
||||
|
||||
require (
|
||||
github.com/99designs/keyring v1.2.2
|
||||
github.com/mattn/go-isatty v0.0.14
|
||||
github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a
|
||||
github.com/muesli/mango-cobra v1.2.0
|
||||
github.com/muesli/reflow v0.3.0
|
||||
github.com/muesli/roff v0.1.0
|
||||
github.com/spf13/cobra v1.6.1
|
||||
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d
|
||||
@@ -22,7 +25,6 @@ require (
|
||||
github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect
|
||||
github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c // indirect
|
||||
github.com/mattn/go-colorable v0.1.9 // indirect
|
||||
github.com/mattn/go-isatty v0.0.14 // indirect
|
||||
github.com/mattn/go-runewidth v0.0.14 // indirect
|
||||
github.com/mitchellh/mapstructure v1.3.3 // indirect
|
||||
github.com/mtibben/percent v0.2.1 // indirect
|
||||
|
||||
@@ -56,6 +56,7 @@ github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope
|
||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||
github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y=
|
||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||
github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
|
||||
github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU=
|
||||
github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
|
||||
github.com/mitchellh/mapstructure v1.3.3 h1:SzB1nHZ2Xi+17FP0zVQBHIZqvwRN9408fJO8h+eeNA8=
|
||||
@@ -63,12 +64,16 @@ github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RR
|
||||
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
|
||||
github.com/mtibben/percent v0.2.1 h1:5gssi8Nqo8QU/r2pynCm+hBQHpkB/uNK7BJCFogWdzs=
|
||||
github.com/mtibben/percent v0.2.1/go.mod h1:KG9uO+SZkUp+VkRHsCdYQV3XSZrrSpR3O9ibNBTZrns=
|
||||
github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a h1:jlDOeO5TU0pYlbc/y6PFguab5IjANI0Knrpg3u/ton4=
|
||||
github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo=
|
||||
github.com/muesli/mango v0.1.0 h1:DZQK45d2gGbql1arsYA4vfg4d7I9Hfx5rX/GCmzsAvI=
|
||||
github.com/muesli/mango v0.1.0/go.mod h1:5XFpbC8jY5UUv89YQciiXNlbi+iJgt29VDC5xbzrLL4=
|
||||
github.com/muesli/mango-cobra v1.2.0 h1:DQvjzAM0PMZr85Iv9LIMaYISpTOliMEg+uMFtNbYvWg=
|
||||
github.com/muesli/mango-cobra v1.2.0/go.mod h1:vMJL54QytZAJhCT13LPVDfkvCUJ5/4jNUKF/8NC2UjA=
|
||||
github.com/muesli/mango-pflag v0.1.0 h1:UADqbYgpUyRoBja3g6LUL+3LErjpsOwaC9ywvBWe7Sg=
|
||||
github.com/muesli/mango-pflag v0.1.0/go.mod h1:YEQomTxaCUp8PrbhFh10UfbhbQrM/xJ4i2PB8VTLLW0=
|
||||
github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s=
|
||||
github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8=
|
||||
github.com/muesli/roff v0.1.0 h1:YD0lalCotmYuF5HhZliKWlIx7IEhiXeSfq7hNjFqGF8=
|
||||
github.com/muesli/roff v0.1.0/go.mod h1:pjAHQM9hdUUwm/krAfrLGgJkXJ+YuhtsfZ42kieB2Ig=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
|
||||
@@ -78,6 +83,7 @@ github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
|
||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
@@ -106,7 +112,6 @@ go.mongodb.org/mongo-driver v1.10.0/go.mod h1:wsihk0Kdgv8Kqu1Anit4sfK+22vSFbUrAV
|
||||
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d h1:sK3txAijHtOK88l68nt020reeT1ZdKLIYetKl95FzVY=
|
||||
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
|
||||
golang.org/x/net v0.0.0-20211029224645-99673261e6eb/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g=
|
||||
golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
||||
|
||||
@@ -263,10 +263,10 @@ var secretsSetCmd = &cobra.Command{
|
||||
}
|
||||
|
||||
// Print secret operations
|
||||
headers := []string{"SECRET NAME", "SECRET VALUE", "STATUS"}
|
||||
rows := [][]string{}
|
||||
headers := [...]string{"SECRET NAME", "SECRET VALUE", "STATUS"}
|
||||
rows := [][3]string{}
|
||||
for _, secretOperation := range secretOperations {
|
||||
rows = append(rows, []string{secretOperation.SecretKey, secretOperation.SecretValue, secretOperation.SecretOperation})
|
||||
rows = append(rows, [...]string{secretOperation.SecretKey, secretOperation.SecretValue, secretOperation.SecretOperation})
|
||||
}
|
||||
|
||||
visualize.Table(headers, rows)
|
||||
|
||||
@@ -3,12 +3,12 @@ package visualize
|
||||
import "github.com/Infisical/infisical-merge/packages/models"
|
||||
|
||||
func PrintAllSecretDetails(secrets []models.SingleEnvironmentVariable) {
|
||||
rows := [][]string{}
|
||||
rows := [][3]string{}
|
||||
for _, secret := range secrets {
|
||||
rows = append(rows, []string{secret.Key, secret.Value, secret.Type})
|
||||
rows = append(rows, [...]string{secret.Key, secret.Value, secret.Type})
|
||||
}
|
||||
|
||||
headers := []string{"SECRET NAME", "SECRET VALUE", "SECRET TYPE"}
|
||||
headers := [...]string{"SECRET NAME", "SECRET VALUE", "SECRET TYPE"}
|
||||
|
||||
Table(headers, rows)
|
||||
}
|
||||
|
||||
@@ -2,8 +2,14 @@ package visualize
|
||||
|
||||
import (
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"github.com/jedib0t/go-pretty/table"
|
||||
"github.com/mattn/go-isatty"
|
||||
"github.com/muesli/ansi"
|
||||
"github.com/muesli/reflow/truncate"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"golang.org/x/term"
|
||||
)
|
||||
|
||||
type TableOptions struct {
|
||||
@@ -16,8 +22,35 @@ type TableOptions struct {
|
||||
// }
|
||||
// }
|
||||
|
||||
const (
|
||||
// combined width of the table borders and padding
|
||||
borderWidths = 10
|
||||
// char to indicate that a string has been truncated
|
||||
ellipsis = "…"
|
||||
)
|
||||
|
||||
// Given headers and rows, this function will print out a table
|
||||
func Table(headers []string, rows [][]string) {
|
||||
func Table(headers [3]string, rows [][3]string) {
|
||||
// if we're not in a terminal or cygwin terminal, don't truncate the secret value
|
||||
shouldTruncate := isatty.IsTerminal(os.Stdout.Fd())
|
||||
|
||||
// This will return an error if we're not in a terminal or
|
||||
// if the terminal is a cygwin terminal like Git Bash.
|
||||
width, _, err := term.GetSize(int(os.Stdout.Fd()))
|
||||
if err != nil {
|
||||
if shouldTruncate {
|
||||
log.Errorf("error getting terminal size: %s", err)
|
||||
} else {
|
||||
log.Debug(err)
|
||||
}
|
||||
}
|
||||
|
||||
longestSecretName, longestSecretType := getLongestValues(append(rows, headers))
|
||||
availableWidth := width - longestSecretName - longestSecretType - borderWidths
|
||||
if availableWidth < 0 {
|
||||
availableWidth = 0
|
||||
}
|
||||
|
||||
t := table.NewWriter()
|
||||
t.SetOutputMirror(os.Stdout)
|
||||
t.SetStyle(table.StyleLight)
|
||||
@@ -35,7 +68,11 @@ func Table(headers []string, rows [][]string) {
|
||||
t.AppendHeader(tableHeaders)
|
||||
for _, row := range rows {
|
||||
tableRow := table.Row{}
|
||||
for _, val := range row {
|
||||
for i, val := range row {
|
||||
// only truncate the first column (secret value)
|
||||
if i == 1 && stringWidth(val) > availableWidth && shouldTruncate {
|
||||
val = truncate.StringWithTail(val, uint(availableWidth), ellipsis)
|
||||
}
|
||||
tableRow = append(tableRow, val)
|
||||
}
|
||||
t.AppendRow(tableRow)
|
||||
@@ -43,3 +80,28 @@ func Table(headers []string, rows [][]string) {
|
||||
|
||||
t.Render()
|
||||
}
|
||||
|
||||
// getLongestValues returns the length of the longest secret name and type from all rows (including the header).
|
||||
func getLongestValues(rows [][3]string) (longestSecretName, longestSecretType int) {
|
||||
for _, row := range rows {
|
||||
if len(row[0]) > longestSecretName {
|
||||
longestSecretName = stringWidth(row[0])
|
||||
}
|
||||
if len(row[2]) > longestSecretType {
|
||||
longestSecretType = stringWidth(row[2])
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// stringWidth returns the width of a string.
|
||||
// ANSI escape sequences are ignored and double-width characters are handled correctly.
|
||||
func stringWidth(str string) (width int) {
|
||||
for _, l := range strings.Split(str, "\n") {
|
||||
w := ansi.PrintableRuneWidth(l)
|
||||
if w > width {
|
||||
width = w
|
||||
}
|
||||
}
|
||||
return width
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ description: "Frequently Asked Questions about Infisical"
|
||||
---
|
||||
|
||||
Frequently asked questions about the CLI can be found on this page.
|
||||
If you can't find the answer you're looking for, please create an issue on our GitHub repository or join our Slack channel for additional support.
|
||||
If you can't find the answer you are looking for, please create an issue on our GitHub repository or join our Slack channel for additional support.
|
||||
|
||||
<Accordion title="I'm getting a Keyring related error message when trying to login" defaultOpen="true">
|
||||
By default, the CLI will choose the most suitable store available on your system.
|
||||
@@ -22,4 +22,4 @@ Yes. If you have previously retrieved secrets for a specific project and environ
|
||||
|
||||
<Accordion title="Can I upload the .infisical.json file that was generated?">
|
||||
Yes. This is simply a configuration file and contains no sensitive data.
|
||||
</Accordion>
|
||||
</Accordion>
|
||||
|
||||
@@ -11,27 +11,27 @@ Other environment variables are listed below to increase the functionality of yo
|
||||
<Tabs>
|
||||
<Tab title="Required">
|
||||
<ParamField query="ENCRYPTION_KEY" type="string" default="none" required>
|
||||
Must be a random 32 character length hex string
|
||||
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
|
||||
</ParamField>
|
||||
|
||||
<ParamField query="JWT_SIGNUP_SECRET" type="string" default="none" required>
|
||||
Must be a random 32 character length hex string
|
||||
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 32 character length hex string
|
||||
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 32 character length hex string
|
||||
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 32 character length hex string
|
||||
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 32 character length hex string
|
||||
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>
|
||||
|
||||
@@ -38,7 +38,7 @@ Self-hosted Infisical allows you to maintain your sensitive information within y
|
||||
#### 1. Fill our environment variables
|
||||
|
||||
Before you can deploy the Helm chart, you must fill out the required environment variables. To do so, please copy the below file to a `.yaml` file.
|
||||
Refer to the available [environment variables](../../self-hosting/configuration/envars) to learn more
|
||||
Refer to the available [environment variables](/self-hosting/configuration/envars) to learn more
|
||||
|
||||
<Accordion title="values.yaml">
|
||||
[View all available Helm chart values parameters](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical)
|
||||
@@ -178,7 +178,7 @@ Self-hosted Infisical allows you to maintain your sensitive information within y
|
||||
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)
|
||||
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
|
||||
@@ -195,4 +195,4 @@ Self-hosted Infisical allows you to maintain your sensitive information within y
|
||||
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>
|
||||
</Tabs>
|
||||
|
||||
@@ -52,12 +52,12 @@ export const OrgSettingsPage = () => {
|
||||
const addIncidentContact = useAddIncidentContact();
|
||||
const removeIncidentContact = useDeleteIncidentContact();
|
||||
|
||||
const [completeInviteLink, setcompleteInviteLink] = useState<string|undefined>("")
|
||||
const [completeInviteLink, setcompleteInviteLink] = useState<string | undefined>('');
|
||||
|
||||
const isMoreUsersNotAllowed =
|
||||
(orgUsers || []).length >= 5 &&
|
||||
subscriptionPlan === plans.starter &&
|
||||
host === 'https://app.infisical.com' &&
|
||||
host === 'https://app.infisical.com' &&
|
||||
currentWorkspace?._id !== '63ea8121b6e2b0543ba79616';
|
||||
|
||||
const onRenameOrg = async (name: string) => {
|
||||
@@ -84,7 +84,7 @@ export const OrgSettingsPage = () => {
|
||||
try {
|
||||
await removeUserOrgMembership.mutateAsync({ orgId: currentOrg?._id, membershipId });
|
||||
createNotification({
|
||||
text: 'Successfully removed used from org',
|
||||
text: 'Successfully removed user from org',
|
||||
type: 'success'
|
||||
});
|
||||
} catch (error) {
|
||||
@@ -99,11 +99,14 @@ export const OrgSettingsPage = () => {
|
||||
if (!currentOrg?._id) return;
|
||||
|
||||
try {
|
||||
const {data} = await addUserToOrg.mutateAsync({ organizationId: currentOrg?._id, inviteeEmail: email });
|
||||
setcompleteInviteLink(data?.completeInviteLink)
|
||||
const { data } = await addUserToOrg.mutateAsync({
|
||||
organizationId: currentOrg?._id,
|
||||
inviteeEmail: email
|
||||
});
|
||||
setcompleteInviteLink(data?.completeInviteLink);
|
||||
|
||||
// only show this notification when email is configured. A [completeInviteLink] will not be sent if smtp is configured
|
||||
if (!data.completeInviteLink){
|
||||
if (!data.completeInviteLink) {
|
||||
createNotification({
|
||||
text: 'Successfully invited user to the organization.',
|
||||
type: 'success'
|
||||
|
||||
Reference in New Issue
Block a user