Skip to content

Commit 92910c7

Browse files
authored
chore: [IOBP-694] Add platform session token generation (#388)
* chore: Add platform session token generation * chore: Add platform session token request response 201 * chore: changed name of return token * chore: Add generic custom token to follow the definitions regex * chore: Prettify * chore: Updated openapi definitions * chore: Add platform-session base path * chore: changed platform pagopa session token definitions version * chore: deifnitions upgrade * chore: changed biz-events baseurl * chore: updated tag version * chore: update definitions
1 parent 63ff162 commit 92910c7

File tree

6 files changed

+26
-10
lines changed

6 files changed

+26
-10
lines changed

package.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,10 @@
2020
"api_pn": "https://raw.githubusercontent.com/pagopa/io-backend/v13.39.1-RELEASE/api_pn.yaml",
2121
"api_idpay": "https://raw.githubusercontent.com/pagopa/cstar-infrastructure/v6.5.0/src/domains/idpay-app/api/idpay_appio_full/openapi.appio.full.yml",
2222
"api_fast_login": "https://raw.githubusercontent.com/pagopa/io-backend/v13.39.1-RELEASE/openapi/generated/api_fast_login.yaml",
23-
"api_pagopa_walletv3": "https://raw.githubusercontent.com/pagopa/pagopa-infra/v1.35.1/src/domains/wallet-app/api/payment-wallet/v1/_openapi.json.tpl",
24-
"api_pagopa_ecommerce": "https://raw.githubusercontent.com/pagopa/pagopa-infra/v1.35.1/src/domains/ecommerce-app/api/ecommerce-io/v1/_openapi.json.tpl",
25-
"api_pagopa_biz_events": "https://raw.githubusercontent.com/pagopa/pagopa-infra/0a6784276fd43aaff7709dd90e0d379e77326f28/src/domains/bizevents-app/api/transaction-service/v1/_openapi-jwt.json.tpl",
23+
"api_pagopa_walletv3": "https://raw.githubusercontent.com/pagopa/pagopa-infra/v1.64.0/src/domains/pay-wallet-app/api/io-payment-wallet/v1/_openapi.json.tpl",
24+
"api_pagopa_ecommerce": "https://raw.githubusercontent.com/pagopa/pagopa-infra/v1.64.0/src/domains/ecommerce-app/api/ecommerce-io/v2/_openapi.json.tpl",
25+
"api_pagopa_biz_events": "https://raw.githubusercontent.com/pagopa/pagopa-biz-events-service/0.1.37/openapi/openapi_io_patch.json",
26+
"api_pagopa_platform": "https://raw.githubusercontent.com/pagopa/pagopa-infra/v1.64.0/src/domains/shared-app/api/session-wallet/v1/_openapi.json.tpl",
2627
"api_services": "https://raw.githubusercontent.com/pagopa/io-backend/master/api_services_app_backend.yaml",
2728
"author": "Matteo Boschi",
2829
"license": "MIT",
@@ -47,6 +48,7 @@
4748
"generate:pagopa-walletv3-definitions": "rimraf generated/definitions/pagopa/walletv3 && mkdir -p generated/definitions/pagopa/walletv3 && gen-api-models --api-spec $npm_package_api_pagopa_walletv3 --out-dir ./generated/definitions/pagopa/walletv3",
4849
"generate:pagopa-ecommerce-definitions": "rimraf generated/definitions/pagopa/ecommerce && mkdir -p generated/definitions/pagopa/ecommerce && gen-api-models --api-spec $npm_package_api_pagopa_ecommerce --out-dir ./generated/definitions/pagopa/ecommerce",
4950
"generate:pagopa-transactions-definitions": "rimraf generated/definitions/pagopa/transactions && mkdir -p generated/definitions/pagopa/transactions && gen-api-models --api-spec $npm_package_api_pagopa_biz_events --out-dir ./generated/definitions/pagopa/transactions",
51+
"generate:pagopa-platform-definitions": "rimraf generated/definitions/pagopa/platform && mkdir -p generated/definitions/pagopa/platform && gen-api-models --api-spec $npm_package_api_pagopa_platform --out-dir ./generated/definitions/pagopa/platform",
5052
"generate:pagopa-api": "rimraf generated/definitions/pagopa && mkdir -p generated/definitions/pagopa && gen-api-models --api-spec $npm_package_api_pagopa --out-dir ./generated/definitions/pagopa",
5153
"generate:cgn-definitions": "rimraf generated/definitions/cgn && mkdir -p generated/definitions/cgn && gen-api-models --api-spec $npm_package_api_cgn --out-dir ./generated/definitions/cgn ",
5254
"generate:cgn-merchants-definitions": "rimraf generated/definitions/cgn/merchants && mkdir -p generated/definitions/cgn/merchants && gen-api-models --api-spec $npm_package_api_cgn_merchants --out-dir ./generated/definitions/cgn/merchants ",
@@ -57,7 +59,7 @@
5759
"generate:pn-definitions": "rimraf generated/definitions/pn && mkdir -p generated/definitions/pn && gen-api-models --api-spec $npm_package_api_pn --out-dir ./generated/definitions/pn --no-strict --request-types --response-decoders",
5860
"generate:idpay-definitions": "rimraf generated/definitions/idpay && mkdir -p generated/definitions/idpay && gen-api-models --api-spec $npm_package_api_idpay --out-dir ./generated/definitions/idpay --no-strict",
5961
"generate:fast-login-definitions": "rimraf generated/definitions/fast_login && mkdir -p generated/definitions/fast_login && gen-api-models --api-spec $npm_package_api_fast_login --out-dir ./generated/definitions/fast_login --no-strict --request-types --response-decoders",
60-
"generate:pagopa": "npm-run-all generate:pagopa-walletv2-definitions generate:pagopa-privative-configuration-definitions generate:pagopa-cobadge-configuration-definitions generate:pagopa-walletv3-definitions generate:pagopa-ecommerce-definitions generate:pagopa-transactions-definitions",
62+
"generate:pagopa": "npm-run-all generate:pagopa-walletv2-definitions generate:pagopa-privative-configuration-definitions generate:pagopa-cobadge-configuration-definitions generate:pagopa-walletv3-definitions generate:pagopa-ecommerce-definitions generate:pagopa-transactions-definitions generate:pagopa-platform-definitions",
6163
"generate:services-definitions": "rimraf generated/definitions/services && mkdir -p generated/definitions/services && gen-api-models --api-spec $npm_package_api_services --out-dir ./generated/definitions/services --no-strict",
6264
"generate": "npm-run-all generate:*"
6365
},
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import "./payment";
22
import "./wallets";
33
import "./transactions";
4+
import "./platform";
45

56
export { walletRouter } from "./router";

src/features/payments/routers/payment.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@ import { generateOnboardablePaymentMethods } from "../utils/onboarding";
2626
import { WALLET_PAYMENT_PATH } from "../utils/payment";
2727
import { addPaymentHandler } from "./router";
2828

29-
// eCommerce session token
30-
addPaymentHandler("post", "/sessions", (req, res) =>
31-
res.status(200).json({ sessionToken: ulid() })
32-
);
33-
3429
// Verify single payment notices
3530
addPaymentHandler("get", "/payment-requests/:rpt_id", (req, res) =>
3631
pipe(
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { PAGOPA_PLATFORM_SESSION_TOKEN } from "../utils/platform";
2+
import { addPlatformHandler } from "./router";
3+
4+
// Generates a new pagoPA platform session token
5+
addPlatformHandler("post", "/session", (_, res) =>
6+
res.status(201).json({ token: PAGOPA_PLATFORM_SESSION_TOKEN })
7+
);

src/features/payments/routers/router.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ export const walletRouter = Router();
55

66
export const PAYMENT_WALLET_PREFIX = "/payment-wallet/v1";
77
export const ECOMMERCE_PREFIX = "/ecommerce/io/v1";
8-
export const TRANSACTIONS_PREFIX = "/bizevents/bizevents/tx-service-jwt/v1";
8+
export const TRANSACTIONS_PREFIX = "/bizevents/tx-service-jwt/v1";
9+
export const PLATFORM_PREFIX = "/session-wallet/v1";
910

1011
export const addPaymentWalletPrefix = (path: string) =>
1112
`${PAYMENT_WALLET_PREFIX}${path}`;
@@ -16,6 +17,8 @@ export const addECommercePrefix = (path: string) =>
1617
export const addTransactionPrefix = (path: string) =>
1718
`${TRANSACTIONS_PREFIX}${path}`;
1819

20+
export const addPlatformPrefix = (path: string) => `${PLATFORM_PREFIX}${path}`;
21+
1922
export const addPaymentWalletHandler = (
2023
method: SupportedMethod,
2124
path: string,
@@ -35,3 +38,9 @@ export const addTransactionHandler = (
3538
handleRequest: (request: Request, response: Response) => void
3639
) =>
3740
addHandler(walletRouter, method, addTransactionPrefix(path), handleRequest);
41+
42+
export const addPlatformHandler = (
43+
method: SupportedMethod,
44+
path: string,
45+
handleRequest: (request: Request, response: Response) => void
46+
) => addHandler(walletRouter, method, addPlatformPrefix(path), handleRequest);
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export const PAGOPA_PLATFORM_SESSION_TOKEN =
2+
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJncm91cCI6ImFuZHJvaWQiLCJhdWQiOiJhbmRyb2lkIiwiaXNzIjoiYXBpLnNvY2lhbGRlYWwubmwiLCJtZW1iZXIiOnsibmFtZSI6ImVyaWsifSwiZXhwIjoxNDUyMDgzMjA3LCJpYXQiOjE0NTE5OTY4MDd9.u7ZBa9RB8U4QL8eBk4hmsjg8oFW19AHuen12c8CvLMj0IQUsNqeC-vwNQvAINpgBM0bzDf5cotyrUzf55eXch6mzfKMa-OJXguO-lARp4fc40HaBWbfnEvGe7yEgSESkt6gJNuprG51A6f4AJyNlXG_3u7O4bAMwiPZJc3AAU84_JXC7Vlq1X3FMaLVGmZdxzA4TvYZEiTt_KHoA49UgzeZtNXo3YiDq-GgL1eV8Li01fwy-M--xzbp4cPcY89jkPyYxUIJEoITOULr3zXQwRfYVe6i0P28oyu5ZzAwYCajBb2T98zN7sFJarNmtcxSKNfhCPnMVn3wrpxx4_Kd2Pw";

0 commit comments

Comments
 (0)