Skip to content

Commit 92a9a05

Browse files
authored
chore: 1186 - shared-bridge (#1023)
## Ticket(s) lié(s) https://jira-mcas.atlassian.net/browse/VAO-1186 ## Description - [x] Renommage de `shared` en `shared-ui` - [x] Ajout de `shared-bridge` - [x] Exemple de partage de constantes ### Dont régressions potentielles à tester ## Screenshot / liens loom ## Check-list - [ ] Ma branche est rebase sur main - [ ] Des tests ont été écrits pour tous les endpoints créés ou modifiés - [ ] Refacto "à la volée" des parties sur lesquelles j'ai codée - [ ] Plus de `console.log` - [ ] J'ai ajouté une validation de schéma sur la route que j'ai ajouté ou modifié
2 parents 3bd6e91 + 9a40bb1 commit 92a9a05

215 files changed

Lines changed: 895 additions & 381 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.talismanrc

Lines changed: 25 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
version: "1.0"
2+
scopeconfig:
3+
- scope: node
14
fileignoreconfig:
25
- filename: .env.dev.example.env
36
checksum: 5592a600679ab6e7ea811a8a82401756d15128d7d09e3f27c06c06caaa15e1dd
@@ -323,34 +326,25 @@ fileignoreconfig:
323326
checksum: 732f20ddab64e6f0e55484fe8bf16f08b1cc0aaccd9ec5b9107e1d058d72ee47
324327
- filename: yarn.lock
325328
checksum: bd0f1b4e3969844785dad9816963820f40637288fa15e094de0b4808aed339b5
326-
scopeconfig:
327-
- scope: node
328-
version: "1.0"
329-
fileignoreconfig:
330-
- filename: pg/scripts/03/03-3-front-data.sql
331-
checksum: 413817c8133c69f883087a7042258dcb75e4f75a45897ea830f86d8a5cba561a
332-
- filename: pg/scripts/03/03-3-ref-data.sql
333-
checksum: 0738f07a54568f11530944b7dd793718435c7b1ab6cc6eacf6739f380fb1eb83
334-
- filename: pg/seeds/BO-1-back-user.sql
335-
checksum: 2261cabf80475ffa0c06e59760d4a89ea3331b81062fe5e8640745741a562995
336-
- filename: s/env/preprod/templates/smtp.sealed.secret.yaml
337-
checksum: 732f20ddab64e6f0e55484fe8bf16f08b1cc0aaccd9ec5b9107e1d058d72ee47
338-
- filename: yarn.lock
339-
checksum: bd0f1b4e3969844785dad9816963820f40637288fa15e094de0b4808aed339b5
340-
- filename: pg/scripts/03/03-2-back-data.sql
341-
checksum: d65e191f22dd46a53fd07dd02856d505a01f38b6274ef1989536aa193faebb2d
342-
- filename: pg/scripts/03/03-3-front-data.sql
343-
checksum: 413817c8133c69f883087a7042258dcb75e4f75a45897ea830f86d8a5cba561a
344-
- filename: pg/scripts/03/03-3-ref-data.sql
345-
checksum: 0738f07a54568f11530944b7dd793718435c7b1ab6cc6eacf6739f380fb1eb83
346-
- filename: pg/seeds/BO-1-back-user.sql
347-
checksum: 2261cabf80475ffa0c06e59760d4a89ea3331b81062fe5e8640745741a562995
348-
- filename: s/env/preprod/templates/smtp.sealed.secret.yaml
349-
checksum: 732f20ddab64e6f0e55484fe8bf16f08b1cc0aaccd9ec5b9107e1d058d72ee47
350-
- filename: yarn.lock
351-
checksum: bd0f1b4e3969844785dad9816963820f40637288fa15e094de0b4808aed339b5
352-
353-
scopeconfig:
354-
- scope: node
355-
356-
version: "1.0"
329+
- filename: pg/scripts/03/03-3-front-data.sql
330+
checksum: 413817c8133c69f883087a7042258dcb75e4f75a45897ea830f86d8a5cba561a
331+
- filename: pg/scripts/03/03-3-ref-data.sql
332+
checksum: 0738f07a54568f11530944b7dd793718435c7b1ab6cc6eacf6739f380fb1eb83
333+
- filename: pg/seeds/BO-1-back-user.sql
334+
checksum: 2261cabf80475ffa0c06e59760d4a89ea3331b81062fe5e8640745741a562995
335+
- filename: s/env/preprod/templates/smtp.sealed.secret.yaml
336+
checksum: 732f20ddab64e6f0e55484fe8bf16f08b1cc0aaccd9ec5b9107e1d058d72ee47
337+
- filename: yarn.lock
338+
checksum: bd0f1b4e3969844785dad9816963820f40637288fa15e094de0b4808aed339b5
339+
- filename: pg/scripts/03/03-2-back-data.sql
340+
checksum: d65e191f22dd46a53fd07dd02856d505a01f38b6274ef1989536aa193faebb2d
341+
- filename: pg/scripts/03/03-3-front-data.sql
342+
checksum: 413817c8133c69f883087a7042258dcb75e4f75a45897ea830f86d8a5cba561a
343+
- filename: pg/scripts/03/03-3-ref-data.sql
344+
checksum: 0738f07a54568f11530944b7dd793718435c7b1ab6cc6eacf6739f380fb1eb83
345+
- filename: pg/seeds/BO-1-back-user.sql
346+
checksum: 2261cabf80475ffa0c06e59760d4a89ea3331b81062fe5e8640745741a562995
347+
- filename: s/env/preprod/templates/smtp.sealed.secret.yaml
348+
checksum: 732f20ddab64e6f0e55484fe8bf16f08b1cc0aaccd9ec5b9107e1d058d72ee47
349+
- filename: yarn.lock
350+
checksum: bd0f1b4e3969844785dad9816963820f40637288fa15e094de0b4808aed339b5

package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,20 @@
77
"private": true,
88
"scripts": {
99
"prepare": "husky install",
10-
"lint:all": "yarn run lint:backend && yarn run lint:frontend-usagers && yarn run lint:frontend-bo && yarn run lint:shared && yarn run lint:api",
10+
"lint:all": "yarn run lint:backend && yarn run lint:frontend-usagers && yarn run lint:frontend-bo && yarn run lint:shared && yarn run lint:api && yarn run lint:cron",
1111
"lint:all:fix": "yarn run lint:backend --fix && yarn run lint:frontend-usagers --fix && yarn run lint:frontend-bo --fix && run lint:shared --fix && run lint:api --fix",
1212
"lint:api": "yarn --cwd ./packages/external-api run lint",
1313
"lint:backend": "yarn --cwd ./packages/backend run lint",
14+
"lint:cron": "yarn --cwd ./packages/cron run lint",
1415
"lint:frontend-usagers": "yarn --cwd ./packages/frontend-usagers run lint",
1516
"lint:frontend-bo": "yarn --cwd ./packages/frontend-bo run lint",
16-
"lint:shared": "yarn --cwd ./packages/shared run lint",
17+
"lint:shared": "yarn --cwd ./packages/shared-ui run lint && yarn --cwd ./packages/shared-bridge run lint",
1718
"knex": "POSTGRES_HOST=localhost POSTGRES_PORT=5436 env-cmd --no-override knex --cwd ./packages/migrations/src",
18-
"test:unit:all": "yarn run test:unit:api && yarn run test:unit:backend",
19+
"test:unit:all": "yarn run test:unit:api && yarn run test:unit:backend && yarn run test:unit:shared-bridge && yarn run test:unit:cron",
1920
"test:unit:api": "yarn workspace @vao/external-api test:cov",
2021
"test:unit:backend": "yarn workspace @vao/backend test:coverage",
22+
"test:unit:cron": "yarn workspace @vao/cron test:coverage",
23+
"test:unit:shared-bridge": "yarn workspace @vao/shared-bridge test:coverage",
2124
"tests:e2e": "E2E_LOCAL=true playwright test",
2225
"tests:e2e:ui": "E2E_LOCAL=true playwright test --ui",
2326
"clean": "yarn --cwd ./packages/frontend-usagers clean && yarn --cwd ./packages/frontend-bo clean && rm -rf node_modules packages/*/node_modules"

packages/backend/Dockerfile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,11 @@ COPY package.json yarn.lock ./
77
COPY packages/backend/package.json packages/backend/
88
COPY packages/backend/tsconfig.json packages/backend/
99
COPY packages/backend/src packages/backend/src
10+
COPY packages/shared-bridge packages/shared-bridge
1011

1112
RUN yarn workspace @vao/backend install --frozen-lockfile
1213
RUN yarn workspace @vao/backend build
14+
RUN yarn workspace @vao/shared-bridge build
1315

1416
#--- Run stage
1517

@@ -22,6 +24,7 @@ ENV NODE_ENV: production
2224

2325
COPY --from=build /app/node_modules node_modules
2426
COPY --from=build /app/packages/backend/dist packages/backend/dist
27+
COPY --from=build /app/packages/shared-bridge/dist/ packages/shared-bridge
2528
COPY package.json yarn.lock ./
2629
COPY packages/backend/package.json packages/backend/
2730

packages/backend/nodemon.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"watch": ["./src", "../shared/src"],
2+
"watch": ["./src", "../shared-bridge/src"],
33
"ext": "js,ts,json",
44
"exec": "tsx ./src/index.js"
55
}

packages/backend/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"@aws-sdk/client-s3": "^3.649.0",
1818
"@sentry/node": "^8.49.0",
1919
"@sentry/profiling-node": "^8.49.0",
20+
"@vao/shared-bridge": "^1.0.0",
2021
"axios": "^1.7.4",
2122
"body-parser": "~1.20.3",
2223
"cookie-parser": "^1.4.6",

packages/backend/src/controllers/authentication/email/login.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
const { ERRORS } = require("@vao/shared-bridge");
2+
13
const jwt = require("jsonwebtoken");
24
const config = require("../../../config");
35

@@ -35,7 +37,7 @@ module.exports = async function login(req, res, next) {
3537
log.w("Trop de tentatives de connexion");
3638
return next(
3739
new AppError("Trop de tentatives de connexion", {
38-
name: "TooManyLoginAttempts",
40+
name: ERRORS.TooManyLoginAttempts,
3941
statusCode: 429,
4042
}),
4143
);

packages/backend/src/controllers/bo-authentication/email/login.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
const { ERRORS } = require("@vao/shared-bridge");
2+
13
const jwt = require("jsonwebtoken");
24
const config = require("../../../config");
35

@@ -39,7 +41,7 @@ module.exports = async function login(req, res, next) {
3941
log.w("Trop de tentatives de connexion");
4042
return next(
4143
new AppError("Trop de tentatives de connexion", {
42-
name: "TooManyLoginAttempts",
44+
name: ERRORS.TooManyLoginAttempts,
4345
statusCode: 429,
4446
}),
4547
);
@@ -59,7 +61,7 @@ module.exports = async function login(req, res, next) {
5961
log.w("Utilisateur BO inexistant");
6062
return next(
6163
new AppError("Mauvais identifiants", {
62-
name: "WrongCredentials",
64+
name: ERRORS.WrongCredentials,
6365
statusCode: 404,
6466
}),
6567
);
@@ -70,7 +72,7 @@ module.exports = async function login(req, res, next) {
7072
log.w("Compte non validé");
7173
return next(
7274
new AppError("Compte non validé", {
73-
name: "NotValidatedAccount",
75+
name: ERRORS.NeedEmailValidation,
7476
statusCode: 400,
7577
}),
7678
);

packages/backend/src/controllers/demandeSejour/cancel.js

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { statuts } = require("../../helpers/ds-statuts");
1+
const { DEMANDE_SEJOUR_STATUTS } = require("@vao/shared-bridge");
22
const DemandeSejour = require("../../services/DemandeSejour");
33
const Send = require("../../services/mail").mailService.send;
44
const MailUtils = require("../../utils/mail");
@@ -29,14 +29,14 @@ module.exports = async function cancel(req, res, next) {
2929
}
3030
log.i(declaration.statut);
3131
const statutsCancellable = [
32-
statuts.TRANSMISE,
33-
statuts.EN_COURS,
34-
statuts.A_MODIFIER,
35-
statuts.ATTENTE_8_JOUR,
36-
statuts.TRANSMISE_8J,
37-
statuts.EN_COURS_8J,
38-
statuts.A_MODIFIER_8J,
39-
statuts.VALIDEE_8J,
32+
DEMANDE_SEJOUR_STATUTS.TRANSMISE,
33+
DEMANDE_SEJOUR_STATUTS.EN_COURS,
34+
DEMANDE_SEJOUR_STATUTS.A_MODIFIER,
35+
DEMANDE_SEJOUR_STATUTS.ATTENTE_8_JOUR,
36+
DEMANDE_SEJOUR_STATUTS.TRANSMISE_8J,
37+
DEMANDE_SEJOUR_STATUTS.EN_COURS_8J,
38+
DEMANDE_SEJOUR_STATUTS.A_MODIFIER_8J,
39+
DEMANDE_SEJOUR_STATUTS.VALIDEE_8J,
4040
];
4141

4242
if (!statutsCancellable.includes(declaration.statut)) {

packages/backend/src/controllers/demandeSejour/copy.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
const DemandeSejour = require("../../services/DemandeSejour");
22
const Organisme = require("../../services/Organisme");
3-
const { statuts } = require("../../helpers/ds-statuts");
3+
const { DEMANDE_SEJOUR_STATUTS } = require("@vao/shared-bridge");
44

55
const logger = require("../../utils/logger");
66
const AppError = require("../../utils/error");
@@ -32,11 +32,11 @@ module.exports = async function post(req, res, next) {
3232
}
3333

3434
if (
35-
sourceDeclaration.statut !== statuts.BROUILLON &&
36-
sourceDeclaration.statut !== statuts.TRANSMISE &&
37-
sourceDeclaration.statut !== statuts.EN_COURS &&
38-
sourceDeclaration.statut !== statuts.ANNULEE &&
39-
sourceDeclaration.statut !== statuts.ABANDONNEE
35+
sourceDeclaration.statut !== DEMANDE_SEJOUR_STATUTS.BROUILLON &&
36+
sourceDeclaration.statut !== DEMANDE_SEJOUR_STATUTS.TRANSMISE &&
37+
sourceDeclaration.statut !== DEMANDE_SEJOUR_STATUTS.EN_COURS &&
38+
sourceDeclaration.statut !== DEMANDE_SEJOUR_STATUTS.ANNULEE &&
39+
sourceDeclaration.statut !== DEMANDE_SEJOUR_STATUTS.ABANDONNEE
4040
) {
4141
log.w("DONE with error");
4242
return next(

packages/backend/src/controllers/demandeSejour/delete.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { statuts } = require("../../helpers/ds-statuts");
1+
const { DEMANDE_SEJOUR_STATUTS } = require("@vao/shared-bridge");
22
const DemandeSejour = require("../../services/DemandeSejour");
33

44
const logger = require("../../utils/logger");
@@ -26,7 +26,7 @@ module.exports = async function post(req, res, next) {
2626
);
2727
}
2828
log.i(declaration.statut);
29-
if (declaration.statut !== statuts.BROUILLON) {
29+
if (declaration.statut !== DEMANDE_SEJOUR_STATUTS.BROUILLON) {
3030
log.w("DONE with error");
3131
return next(
3232
new AppError(

0 commit comments

Comments
 (0)