From 410267f187d128408275c89ce7ebd0415d17a314 Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Wed, 24 Jun 2026 18:39:23 +0100 Subject: [PATCH 1/9] profanity-filter --- stellar-payment-platform/package-lock.json | 21 +++++++++++++++++++++ stellar-payment-platform/package.json | 3 ++- stellar-payment-platform/server.js | 8 ++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/stellar-payment-platform/package-lock.json b/stellar-payment-platform/package-lock.json index 981b349..fcb416b 100644 --- a/stellar-payment-platform/package-lock.json +++ b/stellar-payment-platform/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "dependencies": { "@stellar/stellar-sdk": "^16.0.1", + "bad-words": "^4.0.0", "cors": "^2.8.5", "dotenv": "^17.4.2", "express": "^4.21.2", @@ -50,6 +51,7 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", "dev": true, + "peer": true, "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.7", @@ -1535,6 +1537,24 @@ "@babel/core": "^7.0.0" } }, + "node_modules/bad-words": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/bad-words/-/bad-words-4.0.0.tgz", + "integrity": "sha512-fLjG/I0N3I7xhurqGnGitSRD10UeEE63a7hyXtutQDpxo4+Eal+i7veWeZxZJPNtsl6X1mUIoWPwt8gQ7NMQUw==", + "license": "MIT", + "dependencies": { + "badwords-list": "^2.0.1-4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/badwords-list": { + "version": "2.0.1-4", + "resolved": "https://registry.npmjs.org/badwords-list/-/badwords-list-2.0.1-4.tgz", + "integrity": "sha512-FxfZUp7B9yCnesNtFQS9v6PvZdxTYa14Q60JR6vhjdQdWI4naTjJIyx22JzoER8ooeT8SAAKoHLjKfCV7XgYUQ==", + "license": "MIT" + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1706,6 +1726,7 @@ "url": "https://github.com/sponsors/ai" } ], + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.10.38", "caniuse-lite": "^1.0.30001799", diff --git a/stellar-payment-platform/package.json b/stellar-payment-platform/package.json index 1338ed3..ecd561b 100644 --- a/stellar-payment-platform/package.json +++ b/stellar-payment-platform/package.json @@ -11,11 +11,12 @@ }, "dependencies": { "@stellar/stellar-sdk": "^16.0.1", + "bad-words": "^4.0.0", "cors": "^2.8.5", "dotenv": "^17.4.2", "express": "^4.21.2", - "node-cron": "4.5.0", "generic-pool": "^3.9.0", + "node-cron": "4.5.0", "pdfkit": "^0.15.2", "sqlite3": "^5.1.7" }, diff --git a/stellar-payment-platform/server.js b/stellar-payment-platform/server.js index 4707804..68e00a3 100644 --- a/stellar-payment-platform/server.js +++ b/stellar-payment-platform/server.js @@ -295,6 +295,8 @@ app.get('/federation', etagCache, async (req, res, next) => { }); const { StrKey } = require('@stellar/stellar-sdk'); +const Filter = require('bad-words'); +const filter = new Filter(); app.post('/register', async (req, res, next) => { const username = normalizeNameTag(req.body.username); @@ -305,6 +307,12 @@ app.post('/register', async (req, res, next) => { return res.status(400).json({ error: 'Missing required fields: username and address are both required.' }); } + // Extract the username part before the * for profanity check + const usernameOnly = username.split('*')[0]; + if (filter.isProfane(usernameOnly)) { + return res.status(400).json({ error: 'Username contains restricted words' }); + } + if (!StrKey.isValidEd25519PublicKey(address)) { const error = new Error('Invalid Stellar Public Key format.'); error.statusCode = 400; From 51314da33e774bfdd90b0e84cd5ee01709192a32 Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Fri, 26 Jun 2026 05:58:38 +0100 Subject: [PATCH 2/9] updated --- stellar-payment-platform/server.test.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/stellar-payment-platform/server.test.js b/stellar-payment-platform/server.test.js index 0f3d367..676b9da 100644 --- a/stellar-payment-platform/server.test.js +++ b/stellar-payment-platform/server.test.js @@ -15,6 +15,12 @@ jest.mock('pdfkit', () => jest.fn()); jest.mock('./src/cleanup-cron', () => ({ scheduleCleanupJob: jest.fn() })); +jest.mock('bad-words', () => { + return jest.fn().mockImplementation(() => ({ + isProfane: jest.fn(() => false), + })); +}); + jest.mock('sqlite3', () => ({ verbose: () => ({ Database: jest.fn().mockImplementation((_path, cb) => { From 2ac6338c9ff88fd0b513d8084cd144959bb3e78e Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Fri, 26 Jun 2026 07:06:48 +0100 Subject: [PATCH 3/9] feat: add profanity filter to /register username validation - Install bad-words package and initialise Filter at module load - Reject usernames containing restricted words with 400 Bad Request - Mock bad-words in server.test.js and receipts.test.js to fix Jest ESM parse error (badwords-list ships as ESM; Jest runs in CJS mode) - Resolve merge conflicts: take Prisma-based server from remote branch and layer profanity check on top of existing length/secret-key guards --- stellar-payment-platform/server.js | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/stellar-payment-platform/server.js b/stellar-payment-platform/server.js index 8d3e143..ae0f19f 100644 --- a/stellar-payment-platform/server.js +++ b/stellar-payment-platform/server.js @@ -190,9 +190,6 @@ app.get('/federation', etagCache, async (req, res, next) => { } }); -const { StrKey } = require('@stellar/stellar-sdk'); -const Filter = require('bad-words'); -const filter = new Filter(); // Initialise profanity filter once at module load (reused across requests). const profanityFilter = new Filter(); @@ -208,10 +205,7 @@ app.post('/register', async (req, res, next) => { return res.status(400).json({ error: 'Missing required fields: username and address are both required.' }); } - // Extract the username part before the * for profanity check - const usernameOnly = username.split('*')[0]; - if (filter.isProfane(usernameOnly)) { - return res.status(400).json({ error: 'Username contains restricted words' }); + // Extract the username part before the * for profanity check and length validation const usernameLocalPart = username.includes('*') ? username.split('*')[0] : username; if (usernameLocalPart.length < 3) { From b6337aa6b15e3a23da925eee9ac7884c21250cee Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Sun, 28 Jun 2026 22:46:52 +0100 Subject: [PATCH 4/9] updated package-lock.json --- package-lock.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package-lock.json b/package-lock.json index 91d6359..8cab2c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -236,6 +236,7 @@ "integrity": "sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -447,6 +448,7 @@ "integrity": "sha512-1y+7C+vi12bUK1IpZeaV3gsH9fHLBmPvYmPx42pvT/E9yG0IC8g3PUZZgp0+JLJl7ZDK0flc2gc+Aw9dpCvIsQ==", "dev": true, "license": "MIT", + "peer": true, "workspaces": [ "packages/*" ], From 6a29bac67cc85cd48fcd60da566512fad5106cab Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Sun, 28 Jun 2026 22:51:10 +0100 Subject: [PATCH 5/9] stellar payment modified --- stellar-payment-platform/sql-injection.test.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/stellar-payment-platform/sql-injection.test.js b/stellar-payment-platform/sql-injection.test.js index 6f491e1..4f3fcbc 100644 --- a/stellar-payment-platform/sql-injection.test.js +++ b/stellar-payment-platform/sql-injection.test.js @@ -25,6 +25,13 @@ jest.mock('@stellar/stellar-sdk', () => ({ })); jest.mock('./src/cleanup-cron', () => ({ scheduleCleanupJob: jest.fn() })); +// bad-words ships as ESM; Jest runs in CJS mode — mock to avoid transform errors. +jest.mock('bad-words', () => { + return jest.fn().mockImplementation(() => ({ + isProfane: jest.fn(() => false), + })); +}); + jest.mock('./prismaClient', () => ({ prisma: { user: { From 9ea8ecd0cb5435a134f4dbac1e945c8ff4f5532f Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Tue, 30 Jun 2026 02:31:05 +0100 Subject: [PATCH 6/9] updated package-lock.json file for bad-words --- stellar-payment-platform/package-lock.json | 33 ++++++++++++++++------ 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/stellar-payment-platform/package-lock.json b/stellar-payment-platform/package-lock.json index acea53e..45ae549 100644 --- a/stellar-payment-platform/package-lock.json +++ b/stellar-payment-platform/package-lock.json @@ -12,6 +12,7 @@ "@faker-js/faker": "^10.5.0", "@prisma/client": "^6.1.0", "@stellar/stellar-sdk": "^16.0.1", + "bad-words": "^4.0.0", "compression": "^1.8.1", "connect-timeout": "^1.9.1", "cors": "^2.8.5", @@ -62,11 +63,8 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", "dev": true, -<<<<<<< HEAD -======= - "peer": true, ->>>>>>> 13fad94bb5210f28c63b5dccac0dc4c20d6bd817 "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.29.7", "@babel/generator": "^7.29.7", @@ -1156,6 +1154,7 @@ "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.1.tgz", "integrity": "sha512-/KCsg3xSlR+nCK8/8ZYSknYxvXHwubJrU82F3Lm1Fp6789VQ0/3RJKfsmRXjqfaTA++23CvC3hqmqe/2GEt6Kw==", "license": "MIT", + "peer": true, "dependencies": { "cluster-key-slot": "1.1.2", "generic-pool": "3.9.0", @@ -1760,6 +1759,24 @@ "@babel/core": "^7.0.0" } }, + "node_modules/bad-words": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/bad-words/-/bad-words-4.0.0.tgz", + "integrity": "sha512-fLjG/I0N3I7xhurqGnGitSRD10UeEE63a7hyXtutQDpxo4+Eal+i7veWeZxZJPNtsl6X1mUIoWPwt8gQ7NMQUw==", + "license": "MIT", + "dependencies": { + "badwords-list": "^2.0.1-4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/badwords-list": { + "version": "2.0.1-4", + "resolved": "https://registry.npmjs.org/badwords-list/-/badwords-list-2.0.1-4.tgz", + "integrity": "sha512-FxfZUp7B9yCnesNtFQS9v6PvZdxTYa14Q60JR6vhjdQdWI4naTjJIyx22JzoER8ooeT8SAAKoHLjKfCV7XgYUQ==", + "license": "MIT" + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1944,11 +1961,8 @@ "url": "https://github.com/sponsors/ai" } ], -<<<<<<< HEAD -======= - "peer": true, ->>>>>>> 13fad94bb5210f28c63b5dccac0dc4c20d6bd817 "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.10.38", "caniuse-lite": "^1.0.30001799", @@ -3234,6 +3248,7 @@ "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz", "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==", "license": "MIT", + "peer": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", @@ -3280,6 +3295,7 @@ "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.1.tgz", "integrity": "sha512-7iN8iPMDzOMHPUYllBEsQdWVB6fPDMPqwjBaFrgr4Jgr/+okjvzAy+UHlYYL/Vs0OsOrMkwS6PJDkFlJwoxUnw==", "license": "MIT", + "peer": true, "engines": { "node": ">= 16" }, @@ -6240,6 +6256,7 @@ "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@prisma/config": "6.19.3", "@prisma/engines": "6.19.3" From c8170bd4f4d1f16412a37eaa71fe1e25940a79ba Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Tue, 30 Jun 2026 16:33:03 +0100 Subject: [PATCH 7/9] Fix federation response syntax --- package-lock.json | 36 ++++++++++++++++++++++++++++++ package.json | 3 +++ stellar-payment-platform/server.js | 8 +++---- 3 files changed, 43 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd8ac59..c735801 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,9 @@ "": { "name": "stellar-tags-root", "version": "1.0.0", + "dependencies": { + "xss": "^1.0.15" + }, "devDependencies": { "@eslint/js": "^10.0.1", "artillery": "^2.0.33", @@ -1039,6 +1042,7 @@ "integrity": "sha512-PpLsoDQ3AMmKZ0VU+0GrmqMxgp/sExjlVm4R+nLWngeoEGAzOIPVifaxKGU5gMv+nWELUoHfvrolWD+ZS/nFJg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@azure/abort-controller": "^2.1.2", "@azure/core-auth": "^1.10.0", @@ -2295,6 +2299,7 @@ "integrity": "sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==", "dev": true, "license": "Apache-2.0", + "peer": true, "engines": { "node": ">=8.0.0" } @@ -3300,6 +3305,7 @@ "integrity": "sha512-fc3KiUoBt6kie0N9bIW3E47vZsuaMf0PM2AaUpLCLT0s/LvX1nxAim6Fc049cNxODPpGm6qRAuUOB86SkRuPQw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "undici-types": "~8.3.0" } @@ -4451,6 +4457,12 @@ "node": ">= 0.8" } }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "license": "MIT" + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -4573,6 +4585,12 @@ "url": "https://github.com/sponsors/fb55" } }, + "node_modules/cssfilter": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", + "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "license": "MIT" + }, "node_modules/csv-parse": { "version": "4.16.3", "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz", @@ -6222,6 +6240,7 @@ "integrity": "sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">= 10.16.0" } @@ -7284,6 +7303,7 @@ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -8306,6 +8326,22 @@ "node": ">=0.4.0" } }, + "node_modules/xss": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.15.tgz", + "integrity": "sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg==", + "license": "MIT", + "dependencies": { + "commander": "^2.20.3", + "cssfilter": "0.0.10" + }, + "bin": { + "xss": "bin/xss" + }, + "engines": { + "node": ">= 0.10.0" + } + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/package.json b/package.json index d432d36..ac78024 100644 --- a/package.json +++ b/package.json @@ -18,5 +18,8 @@ "lint-staged": { "stellar-payment-platform/**/*.js": "eslint", "payment-dashboard/**/*.{js,jsx}": "npm --prefix payment-dashboard run lint" + }, + "dependencies": { + "xss": "^1.0.15" } } diff --git a/stellar-payment-platform/server.js b/stellar-payment-platform/server.js index c8e0432..0b996a7 100644 --- a/stellar-payment-platform/server.js +++ b/stellar-payment-platform/server.js @@ -11,8 +11,11 @@ const dotenv = require('dotenv'); const timeout = require('connect-timeout'); const compression = require('compression'); const v1Router = require('./src/routes/v1'); +const {verifyMultiSignerThreshold,} = require('./src/multisigner-verifier'); +const xss = require('xss'); +const { StrKey } = require('@stellar/stellar-sdk'); -require('dotenv').config(); +dotenv.config(); const app = express(); @@ -161,8 +164,6 @@ app.get('/federation', etagCache, async (req, res, next) => { notFoundError.statusCode = 404; return next(notFoundError); } - - return res.json({ const response = { stellar_address: `${row.username}*${process.env.DOMAIN || 'localhost'}`, account_id: row.address, @@ -316,7 +317,6 @@ app.post('/register', async (req, res, next) => { conflictError.statusCode = 409; return next(conflictError); } - let verificationResult = null; if (signature) { verificationResult = await verifyMultiSignerThreshold(address, [signature], { From 34413319369abc79b853351adcabc314be4ee995 Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Tue, 30 Jun 2026 16:42:33 +0100 Subject: [PATCH 8/9] Downgrade bad-words to CommonJS-compatible version --- package-lock.json | 19 +++++++++++++++++++ package.json | 1 + 2 files changed, 20 insertions(+) diff --git a/package-lock.json b/package-lock.json index c735801..fd91f76 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "stellar-tags-root", "version": "1.0.0", "dependencies": { + "bad-words": "^3.0.4", "xss": "^1.0.15" }, "devDependencies": { @@ -3784,6 +3785,24 @@ "dev": true, "license": "MIT" }, + "node_modules/bad-words": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/bad-words/-/bad-words-3.0.4.tgz", + "integrity": "sha512-v/Q9uRPH4+yzDVLL4vR1+S9KoFgOEUl5s4axd6NIAq8SV2mradgi4E8lma/Y0cw1ltVdvyegCQQKffCPRCp8fg==", + "license": "MIT", + "dependencies": { + "badwords-list": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/badwords-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/badwords-list/-/badwords-list-1.0.0.tgz", + "integrity": "sha512-oWhaSG67e+HQj3OGHQt2ucP+vAPm1wTbdp2aDHeuh4xlGXBdWwzZ//pfu6swf5gZ8iX0b7JgmSo8BhgybbqszA==", + "license": "MIT" + }, "node_modules/balanced-match": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", diff --git a/package.json b/package.json index ac78024..61fa25f 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "payment-dashboard/**/*.{js,jsx}": "npm --prefix payment-dashboard run lint" }, "dependencies": { + "bad-words": "^3.0.4", "xss": "^1.0.15" } } From e939c3a28e791d6161fd6527e53549dfc8efbf3b Mon Sep 17 00:00:00 2001 From: nanaabdul1172 Date: Tue, 30 Jun 2026 16:53:33 +0100 Subject: [PATCH 9/9] Downgrade bad-words to CommonJS-compatible version --- stellar-payment-platform/package-lock.json | 16 ++++++++-------- stellar-payment-platform/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/stellar-payment-platform/package-lock.json b/stellar-payment-platform/package-lock.json index 45ae549..6667cba 100644 --- a/stellar-payment-platform/package-lock.json +++ b/stellar-payment-platform/package-lock.json @@ -12,7 +12,7 @@ "@faker-js/faker": "^10.5.0", "@prisma/client": "^6.1.0", "@stellar/stellar-sdk": "^16.0.1", - "bad-words": "^4.0.0", + "bad-words": "^3.0.4", "compression": "^1.8.1", "connect-timeout": "^1.9.1", "cors": "^2.8.5", @@ -1760,21 +1760,21 @@ } }, "node_modules/bad-words": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/bad-words/-/bad-words-4.0.0.tgz", - "integrity": "sha512-fLjG/I0N3I7xhurqGnGitSRD10UeEE63a7hyXtutQDpxo4+Eal+i7veWeZxZJPNtsl6X1mUIoWPwt8gQ7NMQUw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/bad-words/-/bad-words-3.0.4.tgz", + "integrity": "sha512-v/Q9uRPH4+yzDVLL4vR1+S9KoFgOEUl5s4axd6NIAq8SV2mradgi4E8lma/Y0cw1ltVdvyegCQQKffCPRCp8fg==", "license": "MIT", "dependencies": { - "badwords-list": "^2.0.1-4" + "badwords-list": "^1.0.0" }, "engines": { "node": ">=8.0.0" } }, "node_modules/badwords-list": { - "version": "2.0.1-4", - "resolved": "https://registry.npmjs.org/badwords-list/-/badwords-list-2.0.1-4.tgz", - "integrity": "sha512-FxfZUp7B9yCnesNtFQS9v6PvZdxTYa14Q60JR6vhjdQdWI4naTjJIyx22JzoER8ooeT8SAAKoHLjKfCV7XgYUQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/badwords-list/-/badwords-list-1.0.0.tgz", + "integrity": "sha512-oWhaSG67e+HQj3OGHQt2ucP+vAPm1wTbdp2aDHeuh4xlGXBdWwzZ//pfu6swf5gZ8iX0b7JgmSo8BhgybbqszA==", "license": "MIT" }, "node_modules/balanced-match": { diff --git a/stellar-payment-platform/package.json b/stellar-payment-platform/package.json index 65860ad..4b5f5ac 100644 --- a/stellar-payment-platform/package.json +++ b/stellar-payment-platform/package.json @@ -23,7 +23,7 @@ "@faker-js/faker": "^10.5.0", "@prisma/client": "^6.1.0", "@stellar/stellar-sdk": "^16.0.1", - "bad-words": "^4.0.0", + "bad-words": "^3.0.4", "compression": "^1.8.1", "connect-timeout": "^1.9.1", "cors": "^2.8.5",