@twin.org/api-auth-entity-storage-service 0.0.3-next.27 → 0.0.3-next.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -67,7 +67,7 @@ export function generateRestRoutesAuthentication(baseRouteName, componentName) {
|
|
|
67
67
|
operationId: "authenticationLogout",
|
|
68
68
|
summary: "Logout from the server",
|
|
69
69
|
tag: tagsAuthentication[0].name,
|
|
70
|
-
method: "
|
|
70
|
+
method: "POST",
|
|
71
71
|
path: `${baseRouteName}/logout`,
|
|
72
72
|
handler: async (httpRequestContext, request) => authenticationLogout(httpRequestContext, componentName, request),
|
|
73
73
|
requestType: {
|
|
@@ -77,7 +77,7 @@ export function generateRestRoutesAuthentication(baseRouteName, componentName) {
|
|
|
77
77
|
id: "logoutRequestExample",
|
|
78
78
|
description: "The request to logout from the server.",
|
|
79
79
|
request: {
|
|
80
|
-
|
|
80
|
+
body: {
|
|
81
81
|
token: "eyJhbGciOiJIU...sw5c"
|
|
82
82
|
}
|
|
83
83
|
}
|
|
@@ -95,7 +95,7 @@ export function generateRestRoutesAuthentication(baseRouteName, componentName) {
|
|
|
95
95
|
operationId: "authenticationRefreshToken",
|
|
96
96
|
summary: "Refresh an authentication token",
|
|
97
97
|
tag: tagsAuthentication[0].name,
|
|
98
|
-
method: "
|
|
98
|
+
method: "POST",
|
|
99
99
|
path: `${baseRouteName}/refresh`,
|
|
100
100
|
handler: async (httpRequestContext, request) => authenticationRefreshToken(httpRequestContext, componentName, request),
|
|
101
101
|
requestType: {
|
|
@@ -105,7 +105,7 @@ export function generateRestRoutesAuthentication(baseRouteName, componentName) {
|
|
|
105
105
|
id: "refreshTokenRequestExample",
|
|
106
106
|
description: "The request to refresh an auth token.",
|
|
107
107
|
request: {
|
|
108
|
-
|
|
108
|
+
body: {
|
|
109
109
|
token: "eyJhbGciOiJIU...sw5c"
|
|
110
110
|
}
|
|
111
111
|
}
|
|
@@ -197,7 +197,7 @@ export async function authenticationLogin(httpRequestContext, componentName, req
|
|
|
197
197
|
export async function authenticationLogout(httpRequestContext, componentName, request) {
|
|
198
198
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
199
199
|
const component = ComponentFactory.get(componentName);
|
|
200
|
-
await component.logout(request.
|
|
200
|
+
await component.logout(request.body?.token);
|
|
201
201
|
// Need to give a hint to any auth processors about the operation
|
|
202
202
|
// in case they need to manipulate the response
|
|
203
203
|
httpRequestContext.processorState.authOperation = "logout";
|
|
@@ -215,9 +215,9 @@ export async function authenticationLogout(httpRequestContext, componentName, re
|
|
|
215
215
|
export async function authenticationRefreshToken(httpRequestContext, componentName, request) {
|
|
216
216
|
Guards.object(ROUTES_SOURCE, "request", request);
|
|
217
217
|
const component = ComponentFactory.get(componentName);
|
|
218
|
-
// If the token is not in the
|
|
218
|
+
// If the token is not in the body, then maybe an auth processor has extracted it
|
|
219
219
|
// and stored it in the processor state
|
|
220
|
-
const token = request.
|
|
220
|
+
const token = request.body?.token ?? httpRequestContext.processorState.authToken;
|
|
221
221
|
const result = await component.refresh(token);
|
|
222
222
|
// Need to give a hint to any auth processors about the operation
|
|
223
223
|
// in case they need to manipulate the response
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entityStorageAuthenticationRoutes.js","sourceRoot":"","sources":["../../../src/routes/entityStorageAuthenticationRoutes.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type {\n\tIAuthenticationComponent,\n\tILoginRequest,\n\tILoginResponse,\n\tILogoutRequest,\n\tIRefreshTokenRequest,\n\tIRefreshTokenResponse,\n\tIUpdatePasswordRequest\n} from \"@twin.org/api-auth-entity-storage-models\";\nimport type {\n\tIHttpRequestContext,\n\tINoContentResponse,\n\tIRestRoute,\n\tIRestRouteResponseOptions,\n\tITag,\n\tIUnauthorizedResponse\n} from \"@twin.org/api-models\";\nimport { ComponentFactory, Guards } from \"@twin.org/core\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { HttpStatusCode } from \"@twin.org/web\";\n\n/**\n * The source used when communicating about these routes.\n */\nconst ROUTES_SOURCE = \"authenticationRoutes\";\n\n/**\n * The tag to associate with the routes.\n */\nexport const tagsAuthentication: ITag[] = [\n\t{\n\t\tname: \"Authentication\",\n\t\tdescription: \"Authentication endpoints for the REST server.\"\n\t}\n];\n\n/**\n * The REST routes for authentication.\n * @param baseRouteName Prefix to prepend to the paths.\n * @param componentName The name of the component to use in the routes stored in the ComponentFactory.\n * @returns The generated routes.\n */\nexport function generateRestRoutesAuthentication(\n\tbaseRouteName: string,\n\tcomponentName: string\n): IRestRoute[] {\n\tconst loginRoute: IRestRoute<ILoginRequest, ILoginResponse> = {\n\t\toperationId: \"authenticationLogin\",\n\t\tsummary: \"Login to the server\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"POST\",\n\t\tpath: `${baseRouteName}/login`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationLogin(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<ILoginRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"loginRequestExample\",\n\t\t\t\t\tdescription: \"The request to login to the server.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\temail: \"user@example.com\",\n\t\t\t\t\t\t\tpassword: \"MyPassword123!\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<ILoginResponse>(),\n\t\t\t\texamples: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"loginResponseExample\",\n\t\t\t\t\t\tdescription: \"The response for the login request.\",\n\t\t\t\t\t\tresponse: {\n\t\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\t\texpiry: 1722514341067\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t],\n\t\tskipAuth: true\n\t};\n\n\tconst logoutRoute: IRestRoute<ILogoutRequest, INoContentResponse> = {\n\t\toperationId: \"authenticationLogout\",\n\t\tsummary: \"Logout from the server\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"GET\",\n\t\tpath: `${baseRouteName}/logout`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationLogout(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<ILogoutRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"logoutRequestExample\",\n\t\t\t\t\tdescription: \"The request to logout from the server.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\ttoken: \"eyJhbGciOiJIU...sw5c\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<INoContentResponse>()\n\t\t\t}\n\t\t],\n\t\tskipAuth: true\n\t};\n\n\tconst refreshTokenRoute: IRestRoute<IRefreshTokenRequest, IRefreshTokenResponse> = {\n\t\toperationId: \"authenticationRefreshToken\",\n\t\tsummary: \"Refresh an authentication token\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"GET\",\n\t\tpath: `${baseRouteName}/refresh`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationRefreshToken(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<IRefreshTokenRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"refreshTokenRequestExample\",\n\t\t\t\t\tdescription: \"The request to refresh an auth token.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\ttoken: \"eyJhbGciOiJIU...sw5c\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<IRefreshTokenResponse>(),\n\t\t\t\texamples: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"refreshTokenResponseExample\",\n\t\t\t\t\t\tdescription: \"The response for the refresh token request.\",\n\t\t\t\t\t\tresponse: {\n\t\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\t\texpiry: 1722514341067\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t]\n\t};\n\n\tconst updatePasswordRoute: IRestRoute<IUpdatePasswordRequest, INoContentResponse> = {\n\t\toperationId: \"authenticationUpdatePassword\",\n\t\tsummary: \"Update the current user's password\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"PUT\",\n\t\tpath: `${baseRouteName}/password`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationUpdatePassword(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<IUpdatePasswordRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"updatePasswordRequestExample\",\n\t\t\t\t\tdescription: \"The request to update the current user's password.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\tcurrentPassword: \"MyNewPassword123!\",\n\t\t\t\t\t\t\tnewPassword: \"MyNewPassword123!\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<INoContentResponse>()\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t]\n\t};\n\n\treturn [loginRoute, logoutRoute, refreshTokenRoute, updatePasswordRoute];\n}\n\n/**\n * Login to the server.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationLogin(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: ILoginRequest\n): Promise<ILoginResponse & IRestRouteResponseOptions> {\n\tGuards.object<ILoginRequest>(ROUTES_SOURCE, nameof(request), request);\n\tGuards.object<ILoginRequest[\"body\"]>(ROUTES_SOURCE, nameof(request.body), request.body);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\tconst result = await component.login(request.body.email, request.body.password);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"login\";\n\thttpRequestContext.processorState.authToken = result.token;\n\n\treturn {\n\t\tbody: {\n\t\t\texpiry: result.expiry\n\t\t}\n\t};\n}\n\n/**\n * Logout from the server.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationLogout(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: ILogoutRequest\n): Promise<INoContentResponse & IRestRouteResponseOptions> {\n\tGuards.object<ILogoutRequest>(ROUTES_SOURCE, nameof(request), request);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\tawait component.logout(request.query?.token);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"logout\";\n\n\treturn {\n\t\tstatusCode: HttpStatusCode.noContent\n\t};\n}\n\n/**\n * Refresh the login token.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationRefreshToken(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: IRefreshTokenRequest\n): Promise<IRefreshTokenResponse & IRestRouteResponseOptions> {\n\tGuards.object<IRefreshTokenRequest>(ROUTES_SOURCE, nameof(request), request);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\n\t// If the token is not in the query, then maybe an auth processor has extracted it\n\t// and stored it in the processor state\n\tconst token = request.query?.token ?? (httpRequestContext.processorState.authToken as string);\n\tconst result = await component.refresh(token);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"refresh\";\n\thttpRequestContext.processorState.authToken = result.token;\n\n\treturn {\n\t\tbody: {\n\t\t\texpiry: result.expiry\n\t\t}\n\t};\n}\n\n/**\n * Update the user's password.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationUpdatePassword(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: IUpdatePasswordRequest\n): Promise<INoContentResponse> {\n\tGuards.object<IUpdatePasswordRequest>(ROUTES_SOURCE, nameof(request), request);\n\tGuards.object<IUpdatePasswordRequest[\"body\"]>(ROUTES_SOURCE, nameof(request.body), request.body);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\n\tawait component.updatePassword(request.body.currentPassword, request.body.newPassword);\n\n\treturn {\n\t\tstatusCode: HttpStatusCode.noContent\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"file":"entityStorageAuthenticationRoutes.js","sourceRoot":"","sources":["../../../src/routes/entityStorageAuthenticationRoutes.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type {\n\tIAuthenticationComponent,\n\tILoginRequest,\n\tILoginResponse,\n\tILogoutRequest,\n\tIRefreshTokenRequest,\n\tIRefreshTokenResponse,\n\tIUpdatePasswordRequest\n} from \"@twin.org/api-auth-entity-storage-models\";\nimport type {\n\tIHttpRequestContext,\n\tINoContentResponse,\n\tIRestRoute,\n\tIRestRouteResponseOptions,\n\tITag,\n\tIUnauthorizedResponse\n} from \"@twin.org/api-models\";\nimport { ComponentFactory, Guards } from \"@twin.org/core\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { HttpStatusCode } from \"@twin.org/web\";\n\n/**\n * The source used when communicating about these routes.\n */\nconst ROUTES_SOURCE = \"authenticationRoutes\";\n\n/**\n * The tag to associate with the routes.\n */\nexport const tagsAuthentication: ITag[] = [\n\t{\n\t\tname: \"Authentication\",\n\t\tdescription: \"Authentication endpoints for the REST server.\"\n\t}\n];\n\n/**\n * The REST routes for authentication.\n * @param baseRouteName Prefix to prepend to the paths.\n * @param componentName The name of the component to use in the routes stored in the ComponentFactory.\n * @returns The generated routes.\n */\nexport function generateRestRoutesAuthentication(\n\tbaseRouteName: string,\n\tcomponentName: string\n): IRestRoute[] {\n\tconst loginRoute: IRestRoute<ILoginRequest, ILoginResponse> = {\n\t\toperationId: \"authenticationLogin\",\n\t\tsummary: \"Login to the server\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"POST\",\n\t\tpath: `${baseRouteName}/login`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationLogin(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<ILoginRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"loginRequestExample\",\n\t\t\t\t\tdescription: \"The request to login to the server.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\temail: \"user@example.com\",\n\t\t\t\t\t\t\tpassword: \"MyPassword123!\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<ILoginResponse>(),\n\t\t\t\texamples: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"loginResponseExample\",\n\t\t\t\t\t\tdescription: \"The response for the login request.\",\n\t\t\t\t\t\tresponse: {\n\t\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\t\texpiry: 1722514341067\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t],\n\t\tskipAuth: true\n\t};\n\n\tconst logoutRoute: IRestRoute<ILogoutRequest, INoContentResponse> = {\n\t\toperationId: \"authenticationLogout\",\n\t\tsummary: \"Logout from the server\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"POST\",\n\t\tpath: `${baseRouteName}/logout`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationLogout(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<ILogoutRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"logoutRequestExample\",\n\t\t\t\t\tdescription: \"The request to logout from the server.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\ttoken: \"eyJhbGciOiJIU...sw5c\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<INoContentResponse>()\n\t\t\t}\n\t\t],\n\t\tskipAuth: true\n\t};\n\n\tconst refreshTokenRoute: IRestRoute<IRefreshTokenRequest, IRefreshTokenResponse> = {\n\t\toperationId: \"authenticationRefreshToken\",\n\t\tsummary: \"Refresh an authentication token\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"POST\",\n\t\tpath: `${baseRouteName}/refresh`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationRefreshToken(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<IRefreshTokenRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"refreshTokenRequestExample\",\n\t\t\t\t\tdescription: \"The request to refresh an auth token.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\ttoken: \"eyJhbGciOiJIU...sw5c\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<IRefreshTokenResponse>(),\n\t\t\t\texamples: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"refreshTokenResponseExample\",\n\t\t\t\t\t\tdescription: \"The response for the refresh token request.\",\n\t\t\t\t\t\tresponse: {\n\t\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\t\texpiry: 1722514341067\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t]\n\t};\n\n\tconst updatePasswordRoute: IRestRoute<IUpdatePasswordRequest, INoContentResponse> = {\n\t\toperationId: \"authenticationUpdatePassword\",\n\t\tsummary: \"Update the current user's password\",\n\t\ttag: tagsAuthentication[0].name,\n\t\tmethod: \"PUT\",\n\t\tpath: `${baseRouteName}/password`,\n\t\thandler: async (httpRequestContext, request) =>\n\t\t\tauthenticationUpdatePassword(httpRequestContext, componentName, request),\n\t\trequestType: {\n\t\t\ttype: nameof<IUpdatePasswordRequest>(),\n\t\t\texamples: [\n\t\t\t\t{\n\t\t\t\t\tid: \"updatePasswordRequestExample\",\n\t\t\t\t\tdescription: \"The request to update the current user's password.\",\n\t\t\t\t\trequest: {\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\tcurrentPassword: \"MyNewPassword123!\",\n\t\t\t\t\t\t\tnewPassword: \"MyNewPassword123!\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tresponseType: [\n\t\t\t{\n\t\t\t\ttype: nameof<INoContentResponse>()\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: nameof<IUnauthorizedResponse>()\n\t\t\t}\n\t\t]\n\t};\n\n\treturn [loginRoute, logoutRoute, refreshTokenRoute, updatePasswordRoute];\n}\n\n/**\n * Login to the server.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationLogin(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: ILoginRequest\n): Promise<ILoginResponse & IRestRouteResponseOptions> {\n\tGuards.object<ILoginRequest>(ROUTES_SOURCE, nameof(request), request);\n\tGuards.object<ILoginRequest[\"body\"]>(ROUTES_SOURCE, nameof(request.body), request.body);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\tconst result = await component.login(request.body.email, request.body.password);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"login\";\n\thttpRequestContext.processorState.authToken = result.token;\n\n\treturn {\n\t\tbody: {\n\t\t\texpiry: result.expiry\n\t\t}\n\t};\n}\n\n/**\n * Logout from the server.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationLogout(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: ILogoutRequest\n): Promise<INoContentResponse & IRestRouteResponseOptions> {\n\tGuards.object<ILogoutRequest>(ROUTES_SOURCE, nameof(request), request);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\tawait component.logout(request.body?.token);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"logout\";\n\n\treturn {\n\t\tstatusCode: HttpStatusCode.noContent\n\t};\n}\n\n/**\n * Refresh the login token.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationRefreshToken(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: IRefreshTokenRequest\n): Promise<IRefreshTokenResponse & IRestRouteResponseOptions> {\n\tGuards.object<IRefreshTokenRequest>(ROUTES_SOURCE, nameof(request), request);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\n\t// If the token is not in the body, then maybe an auth processor has extracted it\n\t// and stored it in the processor state\n\tconst token = request.body?.token ?? (httpRequestContext.processorState.authToken as string);\n\tconst result = await component.refresh(token);\n\n\t// Need to give a hint to any auth processors about the operation\n\t// in case they need to manipulate the response\n\thttpRequestContext.processorState.authOperation = \"refresh\";\n\thttpRequestContext.processorState.authToken = result.token;\n\n\treturn {\n\t\tbody: {\n\t\t\texpiry: result.expiry\n\t\t}\n\t};\n}\n\n/**\n * Update the user's password.\n * @param httpRequestContext The request context for the API.\n * @param componentName The name of the component to use in the routes.\n * @param request The request.\n * @returns The response object with additional http response properties.\n */\nexport async function authenticationUpdatePassword(\n\thttpRequestContext: IHttpRequestContext,\n\tcomponentName: string,\n\trequest: IUpdatePasswordRequest\n): Promise<INoContentResponse> {\n\tGuards.object<IUpdatePasswordRequest>(ROUTES_SOURCE, nameof(request), request);\n\tGuards.object<IUpdatePasswordRequest[\"body\"]>(ROUTES_SOURCE, nameof(request.body), request.body);\n\n\tconst component = ComponentFactory.get<IAuthenticationComponent>(componentName);\n\n\tawait component.updatePassword(request.body.currentPassword, request.body.newPassword);\n\n\treturn {\n\t\tstatusCode: HttpStatusCode.noContent\n\t};\n}\n"]}
|
package/docs/changelog.md
CHANGED
|
@@ -1,11 +1,43 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [0.0.3-next.
|
|
3
|
+
## [0.0.3-next.29](https://github.com/twinfoundation/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.28...api-auth-entity-storage-service-v0.0.3-next.29) (2026-05-01)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Miscellaneous Chores
|
|
7
|
+
|
|
8
|
+
* **api-auth-entity-storage-service:** Synchronize repo versions
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* The following workspace dependencies were updated
|
|
14
|
+
* dependencies
|
|
15
|
+
* @twin.org/api-auth-entity-storage-models bumped from 0.0.3-next.28 to 0.0.3-next.29
|
|
16
|
+
* @twin.org/api-core bumped from 0.0.3-next.28 to 0.0.3-next.29
|
|
17
|
+
* @twin.org/api-models bumped from 0.0.3-next.28 to 0.0.3-next.29
|
|
18
|
+
|
|
19
|
+
## [0.0.3-next.28](https://github.com/twinfoundation/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.27...api-auth-entity-storage-service-v0.0.3-next.28) (2026-04-30)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* change logout and refresh routes from GET to POST ([#111](https://github.com/twinfoundation/twin-api/issues/111)) ([cb8b64b](https://github.com/twinfoundation/twin-api/commit/cb8b64b6507f9991baa78a663de2e84269695c82))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Dependencies
|
|
28
|
+
|
|
29
|
+
* The following workspace dependencies were updated
|
|
30
|
+
* dependencies
|
|
31
|
+
* @twin.org/api-auth-entity-storage-models bumped from 0.0.3-next.27 to 0.0.3-next.28
|
|
32
|
+
* @twin.org/api-core bumped from 0.0.3-next.27 to 0.0.3-next.28
|
|
33
|
+
* @twin.org/api-models bumped from 0.0.3-next.27 to 0.0.3-next.28
|
|
34
|
+
|
|
35
|
+
## [0.0.3-next.27](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.26...api-auth-entity-storage-service-v0.0.3-next.27) (2026-04-23)
|
|
4
36
|
|
|
5
37
|
|
|
6
38
|
### Bug Fixes
|
|
7
39
|
|
|
8
|
-
* handling the tid as undefined at refresh when empty ([#104](https://github.com/
|
|
40
|
+
* handling the tid as undefined at refresh when empty ([#104](https://github.com/iotaledger/twin-api/issues/104)) ([d874a4a](https://github.com/iotaledger/twin-api/commit/d874a4a542c5fd45bb1bd56650247f844d056643))
|
|
9
41
|
|
|
10
42
|
|
|
11
43
|
### Dependencies
|
|
@@ -16,7 +48,7 @@
|
|
|
16
48
|
* @twin.org/api-core bumped from 0.0.3-next.26 to 0.0.3-next.27
|
|
17
49
|
* @twin.org/api-models bumped from 0.0.3-next.26 to 0.0.3-next.27
|
|
18
50
|
|
|
19
|
-
## [0.0.3-next.26](https://github.com/
|
|
51
|
+
## [0.0.3-next.26](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.25...api-auth-entity-storage-service-v0.0.3-next.26) (2026-04-22)
|
|
20
52
|
|
|
21
53
|
|
|
22
54
|
### Miscellaneous Chores
|
|
@@ -32,12 +64,12 @@
|
|
|
32
64
|
* @twin.org/api-core bumped from 0.0.3-next.25 to 0.0.3-next.26
|
|
33
65
|
* @twin.org/api-models bumped from 0.0.3-next.25 to 0.0.3-next.26
|
|
34
66
|
|
|
35
|
-
## [0.0.3-next.25](https://github.com/
|
|
67
|
+
## [0.0.3-next.25](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.24...api-auth-entity-storage-service-v0.0.3-next.25) (2026-04-14)
|
|
36
68
|
|
|
37
69
|
|
|
38
70
|
### Features
|
|
39
71
|
|
|
40
|
-
* auth header processor use user entity storage directly ([93084cf](https://github.com/
|
|
72
|
+
* auth header processor use user entity storage directly ([93084cf](https://github.com/iotaledger/twin-api/commit/93084cfed8f3ab16c80a1ab1bc90b1d9fc14bd25))
|
|
41
73
|
|
|
42
74
|
|
|
43
75
|
### Dependencies
|
|
@@ -48,12 +80,12 @@
|
|
|
48
80
|
* @twin.org/api-core bumped from 0.0.3-next.24 to 0.0.3-next.25
|
|
49
81
|
* @twin.org/api-models bumped from 0.0.3-next.24 to 0.0.3-next.25
|
|
50
82
|
|
|
51
|
-
## [0.0.3-next.24](https://github.com/
|
|
83
|
+
## [0.0.3-next.24](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.23...api-auth-entity-storage-service-v0.0.3-next.24) (2026-04-14)
|
|
52
84
|
|
|
53
85
|
|
|
54
86
|
### Features
|
|
55
87
|
|
|
56
|
-
* remove auth service dependency on admin service ([4aeb211](https://github.com/
|
|
88
|
+
* remove auth service dependency on admin service ([4aeb211](https://github.com/iotaledger/twin-api/commit/4aeb211a5ffcf2eaea89a6841faea3ac3069ef89))
|
|
57
89
|
|
|
58
90
|
|
|
59
91
|
### Dependencies
|
|
@@ -64,12 +96,12 @@
|
|
|
64
96
|
* @twin.org/api-core bumped from 0.0.3-next.23 to 0.0.3-next.24
|
|
65
97
|
* @twin.org/api-models bumped from 0.0.3-next.23 to 0.0.3-next.24
|
|
66
98
|
|
|
67
|
-
## [0.0.3-next.23](https://github.com/
|
|
99
|
+
## [0.0.3-next.23](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.22...api-auth-entity-storage-service-v0.0.3-next.23) (2026-04-14)
|
|
68
100
|
|
|
69
101
|
|
|
70
102
|
### Features
|
|
71
103
|
|
|
72
|
-
* auth enhancements ([#93](https://github.com/
|
|
104
|
+
* auth enhancements ([#93](https://github.com/iotaledger/twin-api/issues/93)) ([921a50c](https://github.com/iotaledger/twin-api/commit/921a50cd89d26e530a6be6174a5a803060fa0eb6))
|
|
73
105
|
|
|
74
106
|
|
|
75
107
|
### Dependencies
|
|
@@ -80,7 +112,7 @@
|
|
|
80
112
|
* @twin.org/api-core bumped from 0.0.3-next.22 to 0.0.3-next.23
|
|
81
113
|
* @twin.org/api-models bumped from 0.0.3-next.22 to 0.0.3-next.23
|
|
82
114
|
|
|
83
|
-
## [0.0.3-next.22](https://github.com/
|
|
115
|
+
## [0.0.3-next.22](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.21...api-auth-entity-storage-service-v0.0.3-next.22) (2026-03-27)
|
|
84
116
|
|
|
85
117
|
|
|
86
118
|
### Miscellaneous Chores
|
|
@@ -96,7 +128,7 @@
|
|
|
96
128
|
* @twin.org/api-core bumped from 0.0.3-next.21 to 0.0.3-next.22
|
|
97
129
|
* @twin.org/api-models bumped from 0.0.3-next.21 to 0.0.3-next.22
|
|
98
130
|
|
|
99
|
-
## [0.0.3-next.21](https://github.com/
|
|
131
|
+
## [0.0.3-next.21](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.20...api-auth-entity-storage-service-v0.0.3-next.21) (2026-03-11)
|
|
100
132
|
|
|
101
133
|
|
|
102
134
|
### Miscellaneous Chores
|
|
@@ -112,12 +144,12 @@
|
|
|
112
144
|
* @twin.org/api-core bumped from 0.0.3-next.20 to 0.0.3-next.21
|
|
113
145
|
* @twin.org/api-models bumped from 0.0.3-next.20 to 0.0.3-next.21
|
|
114
146
|
|
|
115
|
-
## [0.0.3-next.20](https://github.com/
|
|
147
|
+
## [0.0.3-next.20](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.19...api-auth-entity-storage-service-v0.0.3-next.20) (2026-02-09)
|
|
116
148
|
|
|
117
149
|
|
|
118
150
|
### Features
|
|
119
151
|
|
|
120
|
-
* location encoding ([#79](https://github.com/
|
|
152
|
+
* location encoding ([#79](https://github.com/iotaledger/twin-api/issues/79)) ([c684465](https://github.com/iotaledger/twin-api/commit/c684465f2a871376152472bdecb6aa230b1101a1))
|
|
121
153
|
|
|
122
154
|
|
|
123
155
|
### Dependencies
|
|
@@ -128,12 +160,12 @@
|
|
|
128
160
|
* @twin.org/api-core bumped from 0.0.3-next.19 to 0.0.3-next.20
|
|
129
161
|
* @twin.org/api-models bumped from 0.0.3-next.19 to 0.0.3-next.20
|
|
130
162
|
|
|
131
|
-
## [0.0.3-next.19](https://github.com/
|
|
163
|
+
## [0.0.3-next.19](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.18...api-auth-entity-storage-service-v0.0.3-next.19) (2026-02-06)
|
|
132
164
|
|
|
133
165
|
|
|
134
166
|
### Features
|
|
135
167
|
|
|
136
|
-
* user admin service ([#77](https://github.com/
|
|
168
|
+
* user admin service ([#77](https://github.com/iotaledger/twin-api/issues/77)) ([c8491df](https://github.com/iotaledger/twin-api/commit/c8491df7b07c1f45560c8a78c6adc806d0ececbb))
|
|
137
169
|
|
|
138
170
|
|
|
139
171
|
### Dependencies
|
|
@@ -144,12 +176,12 @@
|
|
|
144
176
|
* @twin.org/api-core bumped from 0.0.3-next.18 to 0.0.3-next.19
|
|
145
177
|
* @twin.org/api-models bumped from 0.0.3-next.18 to 0.0.3-next.19
|
|
146
178
|
|
|
147
|
-
## [0.0.3-next.18](https://github.com/
|
|
179
|
+
## [0.0.3-next.18](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.17...api-auth-entity-storage-service-v0.0.3-next.18) (2026-02-04)
|
|
148
180
|
|
|
149
181
|
|
|
150
182
|
### Features
|
|
151
183
|
|
|
152
|
-
* tenant api and scopes ([#75](https://github.com/
|
|
184
|
+
* tenant api and scopes ([#75](https://github.com/iotaledger/twin-api/issues/75)) ([c663141](https://github.com/iotaledger/twin-api/commit/c663141091e8974d769f8f9904ecdab009ebd083))
|
|
153
185
|
|
|
154
186
|
|
|
155
187
|
### Dependencies
|
|
@@ -160,7 +192,7 @@
|
|
|
160
192
|
* @twin.org/api-core bumped from 0.0.3-next.17 to 0.0.3-next.18
|
|
161
193
|
* @twin.org/api-models bumped from 0.0.3-next.17 to 0.0.3-next.18
|
|
162
194
|
|
|
163
|
-
## [0.0.3-next.17](https://github.com/
|
|
195
|
+
## [0.0.3-next.17](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.16...api-auth-entity-storage-service-v0.0.3-next.17) (2026-01-26)
|
|
164
196
|
|
|
165
197
|
|
|
166
198
|
### Miscellaneous Chores
|
|
@@ -176,7 +208,7 @@
|
|
|
176
208
|
* @twin.org/api-core bumped from 0.0.3-next.16 to 0.0.3-next.17
|
|
177
209
|
* @twin.org/api-models bumped from 0.0.3-next.16 to 0.0.3-next.17
|
|
178
210
|
|
|
179
|
-
## [0.0.3-next.16](https://github.com/
|
|
211
|
+
## [0.0.3-next.16](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.15...api-auth-entity-storage-service-v0.0.3-next.16) (2026-01-26)
|
|
180
212
|
|
|
181
213
|
|
|
182
214
|
### Miscellaneous Chores
|
|
@@ -192,7 +224,7 @@
|
|
|
192
224
|
* @twin.org/api-core bumped from 0.0.3-next.15 to 0.0.3-next.16
|
|
193
225
|
* @twin.org/api-models bumped from 0.0.3-next.15 to 0.0.3-next.16
|
|
194
226
|
|
|
195
|
-
## [0.0.3-next.15](https://github.com/
|
|
227
|
+
## [0.0.3-next.15](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.14...api-auth-entity-storage-service-v0.0.3-next.15) (2026-01-22)
|
|
196
228
|
|
|
197
229
|
|
|
198
230
|
### Miscellaneous Chores
|
|
@@ -208,7 +240,7 @@
|
|
|
208
240
|
* @twin.org/api-core bumped from 0.0.3-next.14 to 0.0.3-next.15
|
|
209
241
|
* @twin.org/api-models bumped from 0.0.3-next.14 to 0.0.3-next.15
|
|
210
242
|
|
|
211
|
-
## [0.0.3-next.14](https://github.com/
|
|
243
|
+
## [0.0.3-next.14](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.13...api-auth-entity-storage-service-v0.0.3-next.14) (2026-01-20)
|
|
212
244
|
|
|
213
245
|
|
|
214
246
|
### Miscellaneous Chores
|
|
@@ -224,7 +256,7 @@
|
|
|
224
256
|
* @twin.org/api-core bumped from 0.0.3-next.13 to 0.0.3-next.14
|
|
225
257
|
* @twin.org/api-models bumped from 0.0.3-next.13 to 0.0.3-next.14
|
|
226
258
|
|
|
227
|
-
## [0.0.3-next.13](https://github.com/
|
|
259
|
+
## [0.0.3-next.13](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.12...api-auth-entity-storage-service-v0.0.3-next.13) (2026-01-19)
|
|
228
260
|
|
|
229
261
|
|
|
230
262
|
### Miscellaneous Chores
|
|
@@ -240,7 +272,7 @@
|
|
|
240
272
|
* @twin.org/api-core bumped from 0.0.3-next.12 to 0.0.3-next.13
|
|
241
273
|
* @twin.org/api-models bumped from 0.0.3-next.12 to 0.0.3-next.13
|
|
242
274
|
|
|
243
|
-
## [0.0.3-next.12](https://github.com/
|
|
275
|
+
## [0.0.3-next.12](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.11...api-auth-entity-storage-service-v0.0.3-next.12) (2026-01-12)
|
|
244
276
|
|
|
245
277
|
|
|
246
278
|
### Miscellaneous Chores
|
|
@@ -256,7 +288,7 @@
|
|
|
256
288
|
* @twin.org/api-core bumped from 0.0.3-next.11 to 0.0.3-next.12
|
|
257
289
|
* @twin.org/api-models bumped from 0.0.3-next.11 to 0.0.3-next.12
|
|
258
290
|
|
|
259
|
-
## [0.0.3-next.11](https://github.com/
|
|
291
|
+
## [0.0.3-next.11](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.10...api-auth-entity-storage-service-v0.0.3-next.11) (2026-01-08)
|
|
260
292
|
|
|
261
293
|
|
|
262
294
|
### Miscellaneous Chores
|
|
@@ -272,12 +304,12 @@
|
|
|
272
304
|
* @twin.org/api-core bumped from 0.0.3-next.10 to 0.0.3-next.11
|
|
273
305
|
* @twin.org/api-models bumped from 0.0.3-next.10 to 0.0.3-next.11
|
|
274
306
|
|
|
275
|
-
## [0.0.3-next.10](https://github.com/
|
|
307
|
+
## [0.0.3-next.10](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.9...api-auth-entity-storage-service-v0.0.3-next.10) (2026-01-05)
|
|
276
308
|
|
|
277
309
|
|
|
278
310
|
### Bug Fixes
|
|
279
311
|
|
|
280
|
-
* remove token from return payload ([eaa4266](https://github.com/
|
|
312
|
+
* remove token from return payload ([eaa4266](https://github.com/iotaledger/twin-api/commit/eaa42661b8540881b0751f5d2513258b3413f3ef))
|
|
281
313
|
|
|
282
314
|
|
|
283
315
|
### Dependencies
|
|
@@ -288,30 +320,30 @@
|
|
|
288
320
|
* @twin.org/api-core bumped from 0.0.3-next.9 to 0.0.3-next.10
|
|
289
321
|
* @twin.org/api-models bumped from 0.0.3-next.9 to 0.0.3-next.10
|
|
290
322
|
|
|
291
|
-
## [0.0.3-next.9](https://github.com/
|
|
323
|
+
## [0.0.3-next.9](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.8...api-auth-entity-storage-service-v0.0.3-next.9) (2026-01-05)
|
|
292
324
|
|
|
293
325
|
|
|
294
326
|
### Features
|
|
295
327
|
|
|
296
|
-
* add context id features ([#42](https://github.com/
|
|
297
|
-
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/
|
|
298
|
-
* add livez endpoint ([#57](https://github.com/
|
|
299
|
-
* add validate-locales ([cdba610](https://github.com/
|
|
300
|
-
* check tenant id in auth if set ([66f7337](https://github.com/
|
|
301
|
-
* eslint migration to flat config ([0dd5820](https://github.com/
|
|
302
|
-
* modify authHeaderProcessor to retain token in response body ([#53](https://github.com/
|
|
303
|
-
* remove unused namespace ([08478f2](https://github.com/
|
|
304
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
305
|
-
* update framework core ([d8eebf2](https://github.com/
|
|
306
|
-
* update IComponent signatures ([915ce37](https://github.com/
|
|
307
|
-
* use new extractBearer method ([3e0cc54](https://github.com/
|
|
308
|
-
* use new extractBearerToken method ([df654e9](https://github.com/
|
|
309
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
328
|
+
* add context id features ([#42](https://github.com/iotaledger/twin-api/issues/42)) ([0186055](https://github.com/iotaledger/twin-api/commit/0186055c48afde842a4254b4df9ac9249c40fe40))
|
|
329
|
+
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/iotaledger/twin-api/commit/88617916e23bfbca023dbae1976fe421983a02ff))
|
|
330
|
+
* add livez endpoint ([#57](https://github.com/iotaledger/twin-api/issues/57)) ([ef007db](https://github.com/iotaledger/twin-api/commit/ef007db8201736dd3053211f849ffd03baaa485e))
|
|
331
|
+
* add validate-locales ([cdba610](https://github.com/iotaledger/twin-api/commit/cdba610a0acb5022d2e3ce729732e6646a297e5e))
|
|
332
|
+
* check tenant id in auth if set ([66f7337](https://github.com/iotaledger/twin-api/commit/66f73374d3cf4c1c85ea96ec74bb30712fb84dd7))
|
|
333
|
+
* eslint migration to flat config ([0dd5820](https://github.com/iotaledger/twin-api/commit/0dd5820e3af97350fd08b8d226f4a6c1a9246805))
|
|
334
|
+
* modify authHeaderProcessor to retain token in response body ([#53](https://github.com/iotaledger/twin-api/issues/53)) ([5d9ae76](https://github.com/iotaledger/twin-api/commit/5d9ae76b5b52a8e10dac391b2d5784638a186583))
|
|
335
|
+
* remove unused namespace ([08478f2](https://github.com/iotaledger/twin-api/commit/08478f27efda9beb0271fdb22f6972e918361965))
|
|
336
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
337
|
+
* update framework core ([d8eebf2](https://github.com/iotaledger/twin-api/commit/d8eebf267fa2a0abaa84e58590496e9d20490cfa))
|
|
338
|
+
* update IComponent signatures ([915ce37](https://github.com/iotaledger/twin-api/commit/915ce37712326ab4aa6869c350eabaa4622e8430))
|
|
339
|
+
* use new extractBearer method ([3e0cc54](https://github.com/iotaledger/twin-api/commit/3e0cc5462c06f59a6b744386eeff8326e5abbc95))
|
|
340
|
+
* use new extractBearerToken method ([df654e9](https://github.com/iotaledger/twin-api/commit/df654e9caee5bd62f0be36f7be9902c8fab6ead6))
|
|
341
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
310
342
|
|
|
311
343
|
|
|
312
344
|
### Bug Fixes
|
|
313
345
|
|
|
314
|
-
* include org in context ids from jwt ([a12cfdd](https://github.com/
|
|
346
|
+
* include org in context ids from jwt ([a12cfdd](https://github.com/iotaledger/twin-api/commit/a12cfdddb05e2ed0300b26f3d7c0cfc033e59bd3))
|
|
315
347
|
|
|
316
348
|
|
|
317
349
|
### Dependencies
|
|
@@ -322,7 +354,7 @@
|
|
|
322
354
|
* @twin.org/api-core bumped from 0.0.3-next.8 to 0.0.3-next.9
|
|
323
355
|
* @twin.org/api-models bumped from 0.0.3-next.8 to 0.0.3-next.9
|
|
324
356
|
|
|
325
|
-
## [0.0.3-next.8](https://github.com/
|
|
357
|
+
## [0.0.3-next.8](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.7...api-auth-entity-storage-service-v0.0.3-next.8) (2025-12-17)
|
|
326
358
|
|
|
327
359
|
|
|
328
360
|
### Miscellaneous Chores
|
|
@@ -338,7 +370,7 @@
|
|
|
338
370
|
* @twin.org/api-core bumped from 0.0.3-next.7 to 0.0.3-next.8
|
|
339
371
|
* @twin.org/api-models bumped from 0.0.3-next.7 to 0.0.3-next.8
|
|
340
372
|
|
|
341
|
-
## [0.0.3-next.7](https://github.com/
|
|
373
|
+
## [0.0.3-next.7](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.6...api-auth-entity-storage-service-v0.0.3-next.7) (2025-11-26)
|
|
342
374
|
|
|
343
375
|
|
|
344
376
|
### Miscellaneous Chores
|
|
@@ -354,12 +386,12 @@
|
|
|
354
386
|
* @twin.org/api-core bumped from 0.0.3-next.6 to 0.0.3-next.7
|
|
355
387
|
* @twin.org/api-models bumped from 0.0.3-next.6 to 0.0.3-next.7
|
|
356
388
|
|
|
357
|
-
## [0.0.3-next.6](https://github.com/
|
|
389
|
+
## [0.0.3-next.6](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.5...api-auth-entity-storage-service-v0.0.3-next.6) (2025-11-20)
|
|
358
390
|
|
|
359
391
|
|
|
360
392
|
### Features
|
|
361
393
|
|
|
362
|
-
* check tenant id in auth if set ([66f7337](https://github.com/
|
|
394
|
+
* check tenant id in auth if set ([66f7337](https://github.com/iotaledger/twin-api/commit/66f73374d3cf4c1c85ea96ec74bb30712fb84dd7))
|
|
363
395
|
|
|
364
396
|
|
|
365
397
|
### Dependencies
|
|
@@ -370,7 +402,7 @@
|
|
|
370
402
|
* @twin.org/api-core bumped from 0.0.3-next.5 to 0.0.3-next.6
|
|
371
403
|
* @twin.org/api-models bumped from 0.0.3-next.5 to 0.0.3-next.6
|
|
372
404
|
|
|
373
|
-
## [0.0.3-next.5](https://github.com/
|
|
405
|
+
## [0.0.3-next.5](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.4...api-auth-entity-storage-service-v0.0.3-next.5) (2025-11-14)
|
|
374
406
|
|
|
375
407
|
|
|
376
408
|
### Miscellaneous Chores
|
|
@@ -386,27 +418,27 @@
|
|
|
386
418
|
* @twin.org/api-core bumped from 0.0.3-next.4 to 0.0.3-next.5
|
|
387
419
|
* @twin.org/api-models bumped from 0.0.3-next.4 to 0.0.3-next.5
|
|
388
420
|
|
|
389
|
-
## [0.0.3-next.4](https://github.com/
|
|
421
|
+
## [0.0.3-next.4](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.3...api-auth-entity-storage-service-v0.0.3-next.4) (2025-11-14)
|
|
390
422
|
|
|
391
423
|
|
|
392
424
|
### Features
|
|
393
425
|
|
|
394
|
-
* add context id features ([#42](https://github.com/
|
|
395
|
-
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/
|
|
396
|
-
* add validate-locales ([cdba610](https://github.com/
|
|
397
|
-
* eslint migration to flat config ([0dd5820](https://github.com/
|
|
398
|
-
* remove unused namespace ([08478f2](https://github.com/
|
|
399
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
400
|
-
* update framework core ([d8eebf2](https://github.com/
|
|
401
|
-
* update IComponent signatures ([915ce37](https://github.com/
|
|
402
|
-
* use new extractBearer method ([3e0cc54](https://github.com/
|
|
403
|
-
* use new extractBearerToken method ([df654e9](https://github.com/
|
|
404
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
426
|
+
* add context id features ([#42](https://github.com/iotaledger/twin-api/issues/42)) ([0186055](https://github.com/iotaledger/twin-api/commit/0186055c48afde842a4254b4df9ac9249c40fe40))
|
|
427
|
+
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/iotaledger/twin-api/commit/88617916e23bfbca023dbae1976fe421983a02ff))
|
|
428
|
+
* add validate-locales ([cdba610](https://github.com/iotaledger/twin-api/commit/cdba610a0acb5022d2e3ce729732e6646a297e5e))
|
|
429
|
+
* eslint migration to flat config ([0dd5820](https://github.com/iotaledger/twin-api/commit/0dd5820e3af97350fd08b8d226f4a6c1a9246805))
|
|
430
|
+
* remove unused namespace ([08478f2](https://github.com/iotaledger/twin-api/commit/08478f27efda9beb0271fdb22f6972e918361965))
|
|
431
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
432
|
+
* update framework core ([d8eebf2](https://github.com/iotaledger/twin-api/commit/d8eebf267fa2a0abaa84e58590496e9d20490cfa))
|
|
433
|
+
* update IComponent signatures ([915ce37](https://github.com/iotaledger/twin-api/commit/915ce37712326ab4aa6869c350eabaa4622e8430))
|
|
434
|
+
* use new extractBearer method ([3e0cc54](https://github.com/iotaledger/twin-api/commit/3e0cc5462c06f59a6b744386eeff8326e5abbc95))
|
|
435
|
+
* use new extractBearerToken method ([df654e9](https://github.com/iotaledger/twin-api/commit/df654e9caee5bd62f0be36f7be9902c8fab6ead6))
|
|
436
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
405
437
|
|
|
406
438
|
|
|
407
439
|
### Bug Fixes
|
|
408
440
|
|
|
409
|
-
* include org in context ids from jwt ([a12cfdd](https://github.com/
|
|
441
|
+
* include org in context ids from jwt ([a12cfdd](https://github.com/iotaledger/twin-api/commit/a12cfdddb05e2ed0300b26f3d7c0cfc033e59bd3))
|
|
410
442
|
|
|
411
443
|
|
|
412
444
|
### Dependencies
|
|
@@ -417,12 +449,12 @@
|
|
|
417
449
|
* @twin.org/api-core bumped from 0.0.3-next.3 to 0.0.3-next.4
|
|
418
450
|
* @twin.org/api-models bumped from 0.0.3-next.3 to 0.0.3-next.4
|
|
419
451
|
|
|
420
|
-
## [0.0.3-next.3](https://github.com/
|
|
452
|
+
## [0.0.3-next.3](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.2...api-auth-entity-storage-service-v0.0.3-next.3) (2025-11-14)
|
|
421
453
|
|
|
422
454
|
|
|
423
455
|
### Bug Fixes
|
|
424
456
|
|
|
425
|
-
* include org in context ids from jwt ([a12cfdd](https://github.com/
|
|
457
|
+
* include org in context ids from jwt ([a12cfdd](https://github.com/iotaledger/twin-api/commit/a12cfdddb05e2ed0300b26f3d7c0cfc033e59bd3))
|
|
426
458
|
|
|
427
459
|
|
|
428
460
|
### Dependencies
|
|
@@ -433,7 +465,7 @@
|
|
|
433
465
|
* @twin.org/api-core bumped from 0.0.3-next.2 to 0.0.3-next.3
|
|
434
466
|
* @twin.org/api-models bumped from 0.0.3-next.2 to 0.0.3-next.3
|
|
435
467
|
|
|
436
|
-
## [0.0.3-next.2](https://github.com/
|
|
468
|
+
## [0.0.3-next.2](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.1...api-auth-entity-storage-service-v0.0.3-next.2) (2025-11-12)
|
|
437
469
|
|
|
438
470
|
|
|
439
471
|
### Miscellaneous Chores
|
|
@@ -449,22 +481,22 @@
|
|
|
449
481
|
* @twin.org/api-core bumped from 0.0.3-next.1 to 0.0.3-next.2
|
|
450
482
|
* @twin.org/api-models bumped from 0.0.3-next.1 to 0.0.3-next.2
|
|
451
483
|
|
|
452
|
-
## [0.0.3-next.1](https://github.com/
|
|
484
|
+
## [0.0.3-next.1](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.3-next.0...api-auth-entity-storage-service-v0.0.3-next.1) (2025-11-10)
|
|
453
485
|
|
|
454
486
|
|
|
455
487
|
### Features
|
|
456
488
|
|
|
457
|
-
* add context id features ([#42](https://github.com/
|
|
458
|
-
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/
|
|
459
|
-
* add validate-locales ([cdba610](https://github.com/
|
|
460
|
-
* eslint migration to flat config ([0dd5820](https://github.com/
|
|
461
|
-
* remove unused namespace ([08478f2](https://github.com/
|
|
462
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
463
|
-
* update framework core ([d8eebf2](https://github.com/
|
|
464
|
-
* update IComponent signatures ([915ce37](https://github.com/
|
|
465
|
-
* use new extractBearer method ([3e0cc54](https://github.com/
|
|
466
|
-
* use new extractBearerToken method ([df654e9](https://github.com/
|
|
467
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
489
|
+
* add context id features ([#42](https://github.com/iotaledger/twin-api/issues/42)) ([0186055](https://github.com/iotaledger/twin-api/commit/0186055c48afde842a4254b4df9ac9249c40fe40))
|
|
490
|
+
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/iotaledger/twin-api/commit/88617916e23bfbca023dbae1976fe421983a02ff))
|
|
491
|
+
* add validate-locales ([cdba610](https://github.com/iotaledger/twin-api/commit/cdba610a0acb5022d2e3ce729732e6646a297e5e))
|
|
492
|
+
* eslint migration to flat config ([0dd5820](https://github.com/iotaledger/twin-api/commit/0dd5820e3af97350fd08b8d226f4a6c1a9246805))
|
|
493
|
+
* remove unused namespace ([08478f2](https://github.com/iotaledger/twin-api/commit/08478f27efda9beb0271fdb22f6972e918361965))
|
|
494
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
495
|
+
* update framework core ([d8eebf2](https://github.com/iotaledger/twin-api/commit/d8eebf267fa2a0abaa84e58590496e9d20490cfa))
|
|
496
|
+
* update IComponent signatures ([915ce37](https://github.com/iotaledger/twin-api/commit/915ce37712326ab4aa6869c350eabaa4622e8430))
|
|
497
|
+
* use new extractBearer method ([3e0cc54](https://github.com/iotaledger/twin-api/commit/3e0cc5462c06f59a6b744386eeff8326e5abbc95))
|
|
498
|
+
* use new extractBearerToken method ([df654e9](https://github.com/iotaledger/twin-api/commit/df654e9caee5bd62f0be36f7be9902c8fab6ead6))
|
|
499
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
468
500
|
|
|
469
501
|
|
|
470
502
|
### Dependencies
|
|
@@ -475,7 +507,7 @@
|
|
|
475
507
|
* @twin.org/api-core bumped from 0.0.3-next.0 to 0.0.3-next.1
|
|
476
508
|
* @twin.org/api-models bumped from 0.0.3-next.0 to 0.0.3-next.1
|
|
477
509
|
|
|
478
|
-
## [0.0.2-next.13](https://github.com/
|
|
510
|
+
## [0.0.2-next.13](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.12...api-auth-entity-storage-service-v0.0.2-next.13) (2025-10-09)
|
|
479
511
|
|
|
480
512
|
|
|
481
513
|
### Miscellaneous Chores
|
|
@@ -491,12 +523,12 @@
|
|
|
491
523
|
* @twin.org/api-core bumped from 0.0.2-next.12 to 0.0.2-next.13
|
|
492
524
|
* @twin.org/api-models bumped from 0.0.2-next.12 to 0.0.2-next.13
|
|
493
525
|
|
|
494
|
-
## [0.0.2-next.12](https://github.com/
|
|
526
|
+
## [0.0.2-next.12](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.11...api-auth-entity-storage-service-v0.0.2-next.12) (2025-10-09)
|
|
495
527
|
|
|
496
528
|
|
|
497
529
|
### Features
|
|
498
530
|
|
|
499
|
-
* add validate-locales ([cdba610](https://github.com/
|
|
531
|
+
* add validate-locales ([cdba610](https://github.com/iotaledger/twin-api/commit/cdba610a0acb5022d2e3ce729732e6646a297e5e))
|
|
500
532
|
|
|
501
533
|
|
|
502
534
|
### Dependencies
|
|
@@ -507,12 +539,12 @@
|
|
|
507
539
|
* @twin.org/api-core bumped from 0.0.2-next.11 to 0.0.2-next.12
|
|
508
540
|
* @twin.org/api-models bumped from 0.0.2-next.11 to 0.0.2-next.12
|
|
509
541
|
|
|
510
|
-
## [0.0.2-next.11](https://github.com/
|
|
542
|
+
## [0.0.2-next.11](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.10...api-auth-entity-storage-service-v0.0.2-next.11) (2025-09-29)
|
|
511
543
|
|
|
512
544
|
|
|
513
545
|
### Features
|
|
514
546
|
|
|
515
|
-
* update IComponent signatures ([915ce37](https://github.com/
|
|
547
|
+
* update IComponent signatures ([915ce37](https://github.com/iotaledger/twin-api/commit/915ce37712326ab4aa6869c350eabaa4622e8430))
|
|
516
548
|
|
|
517
549
|
|
|
518
550
|
### Dependencies
|
|
@@ -523,13 +555,13 @@
|
|
|
523
555
|
* @twin.org/api-core bumped from 0.0.2-next.10 to 0.0.2-next.11
|
|
524
556
|
* @twin.org/api-models bumped from 0.0.2-next.10 to 0.0.2-next.11
|
|
525
557
|
|
|
526
|
-
## [0.0.2-next.10](https://github.com/
|
|
558
|
+
## [0.0.2-next.10](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.9...api-auth-entity-storage-service-v0.0.2-next.10) (2025-09-23)
|
|
527
559
|
|
|
528
560
|
|
|
529
561
|
### Features
|
|
530
562
|
|
|
531
|
-
* use new extractBearer method ([3e0cc54](https://github.com/
|
|
532
|
-
* use new extractBearerToken method ([df654e9](https://github.com/
|
|
563
|
+
* use new extractBearer method ([3e0cc54](https://github.com/iotaledger/twin-api/commit/3e0cc5462c06f59a6b744386eeff8326e5abbc95))
|
|
564
|
+
* use new extractBearerToken method ([df654e9](https://github.com/iotaledger/twin-api/commit/df654e9caee5bd62f0be36f7be9902c8fab6ead6))
|
|
533
565
|
|
|
534
566
|
|
|
535
567
|
### Dependencies
|
|
@@ -540,12 +572,12 @@
|
|
|
540
572
|
* @twin.org/api-core bumped from 0.0.2-next.9 to 0.0.2-next.10
|
|
541
573
|
* @twin.org/api-models bumped from 0.0.2-next.9 to 0.0.2-next.10
|
|
542
574
|
|
|
543
|
-
## [0.0.2-next.9](https://github.com/
|
|
575
|
+
## [0.0.2-next.9](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.8...api-auth-entity-storage-service-v0.0.2-next.9) (2025-08-29)
|
|
544
576
|
|
|
545
577
|
|
|
546
578
|
### Features
|
|
547
579
|
|
|
548
|
-
* eslint migration to flat config ([0dd5820](https://github.com/
|
|
580
|
+
* eslint migration to flat config ([0dd5820](https://github.com/iotaledger/twin-api/commit/0dd5820e3af97350fd08b8d226f4a6c1a9246805))
|
|
549
581
|
|
|
550
582
|
|
|
551
583
|
### Dependencies
|
|
@@ -556,7 +588,7 @@
|
|
|
556
588
|
* @twin.org/api-core bumped from 0.0.2-next.8 to 0.0.2-next.9
|
|
557
589
|
* @twin.org/api-models bumped from 0.0.2-next.8 to 0.0.2-next.9
|
|
558
590
|
|
|
559
|
-
## [0.0.2-next.8](https://github.com/
|
|
591
|
+
## [0.0.2-next.8](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.7...api-auth-entity-storage-service-v0.0.2-next.8) (2025-08-21)
|
|
560
592
|
|
|
561
593
|
|
|
562
594
|
### Miscellaneous Chores
|
|
@@ -572,7 +604,7 @@
|
|
|
572
604
|
* @twin.org/api-core bumped from 0.0.2-next.7 to 0.0.2-next.8
|
|
573
605
|
* @twin.org/api-models bumped from 0.0.2-next.7 to 0.0.2-next.8
|
|
574
606
|
|
|
575
|
-
## [0.0.2-next.7](https://github.com/
|
|
607
|
+
## [0.0.2-next.7](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.6...api-auth-entity-storage-service-v0.0.2-next.7) (2025-08-20)
|
|
576
608
|
|
|
577
609
|
|
|
578
610
|
### Miscellaneous Chores
|
|
@@ -588,12 +620,12 @@
|
|
|
588
620
|
* @twin.org/api-core bumped from 0.0.2-next.6 to 0.0.2-next.7
|
|
589
621
|
* @twin.org/api-models bumped from 0.0.2-next.6 to 0.0.2-next.7
|
|
590
622
|
|
|
591
|
-
## [0.0.2-next.6](https://github.com/
|
|
623
|
+
## [0.0.2-next.6](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.5...api-auth-entity-storage-service-v0.0.2-next.6) (2025-08-19)
|
|
592
624
|
|
|
593
625
|
|
|
594
626
|
### Features
|
|
595
627
|
|
|
596
|
-
* update framework core ([d8eebf2](https://github.com/
|
|
628
|
+
* update framework core ([d8eebf2](https://github.com/iotaledger/twin-api/commit/d8eebf267fa2a0abaa84e58590496e9d20490cfa))
|
|
597
629
|
|
|
598
630
|
|
|
599
631
|
### Dependencies
|
|
@@ -604,15 +636,15 @@
|
|
|
604
636
|
* @twin.org/api-core bumped from 0.0.2-next.5 to 0.0.2-next.6
|
|
605
637
|
* @twin.org/api-models bumped from 0.0.2-next.5 to 0.0.2-next.6
|
|
606
638
|
|
|
607
|
-
## [0.0.2-next.5](https://github.com/
|
|
639
|
+
## [0.0.2-next.5](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.4...api-auth-entity-storage-service-v0.0.2-next.5) (2025-07-25)
|
|
608
640
|
|
|
609
641
|
|
|
610
642
|
### Features
|
|
611
643
|
|
|
612
|
-
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/
|
|
613
|
-
* remove unused namespace ([08478f2](https://github.com/
|
|
614
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
615
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
644
|
+
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/iotaledger/twin-api/commit/88617916e23bfbca023dbae1976fe421983a02ff))
|
|
645
|
+
* remove unused namespace ([08478f2](https://github.com/iotaledger/twin-api/commit/08478f27efda9beb0271fdb22f6972e918361965))
|
|
646
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
647
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
616
648
|
|
|
617
649
|
|
|
618
650
|
### Dependencies
|
|
@@ -623,7 +655,7 @@
|
|
|
623
655
|
* @twin.org/api-core bumped from 0.0.2-next.4 to 0.0.2-next.5
|
|
624
656
|
* @twin.org/api-models bumped from 0.0.2-next.4 to 0.0.2-next.5
|
|
625
657
|
|
|
626
|
-
## [0.0.2-next.4](https://github.com/
|
|
658
|
+
## [0.0.2-next.4](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.3...api-auth-entity-storage-service-v0.0.2-next.4) (2025-07-25)
|
|
627
659
|
|
|
628
660
|
|
|
629
661
|
### Miscellaneous Chores
|
|
@@ -639,12 +671,12 @@
|
|
|
639
671
|
* @twin.org/api-core bumped from 0.0.2-next.3 to 0.0.2-next.4
|
|
640
672
|
* @twin.org/api-models bumped from 0.0.2-next.3 to 0.0.2-next.4
|
|
641
673
|
|
|
642
|
-
## [0.0.2-next.3](https://github.com/
|
|
674
|
+
## [0.0.2-next.3](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.2...api-auth-entity-storage-service-v0.0.2-next.3) (2025-07-24)
|
|
643
675
|
|
|
644
676
|
|
|
645
677
|
### Features
|
|
646
678
|
|
|
647
|
-
* remove unused namespace ([08478f2](https://github.com/
|
|
679
|
+
* remove unused namespace ([08478f2](https://github.com/iotaledger/twin-api/commit/08478f27efda9beb0271fdb22f6972e918361965))
|
|
648
680
|
|
|
649
681
|
|
|
650
682
|
### Dependencies
|
|
@@ -655,7 +687,7 @@
|
|
|
655
687
|
* @twin.org/api-core bumped from 0.0.2-next.2 to 0.0.2-next.3
|
|
656
688
|
* @twin.org/api-models bumped from 0.0.2-next.2 to 0.0.2-next.3
|
|
657
689
|
|
|
658
|
-
## [0.0.2-next.2](https://github.com/
|
|
690
|
+
## [0.0.2-next.2](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.1...api-auth-entity-storage-service-v0.0.2-next.2) (2025-07-17)
|
|
659
691
|
|
|
660
692
|
|
|
661
693
|
### Miscellaneous Chores
|
|
@@ -671,14 +703,14 @@
|
|
|
671
703
|
* @twin.org/api-core bumped from 0.0.2-next.1 to 0.0.2-next.2
|
|
672
704
|
* @twin.org/api-models bumped from 0.0.2-next.1 to 0.0.2-next.2
|
|
673
705
|
|
|
674
|
-
## [0.0.2-next.1](https://github.com/
|
|
706
|
+
## [0.0.2-next.1](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.2-next.0...api-auth-entity-storage-service-v0.0.2-next.1) (2025-07-08)
|
|
675
707
|
|
|
676
708
|
|
|
677
709
|
### Features
|
|
678
710
|
|
|
679
|
-
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/
|
|
680
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
681
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
711
|
+
* add json-ld mime type processor and auth admin component ([8861791](https://github.com/iotaledger/twin-api/commit/88617916e23bfbca023dbae1976fe421983a02ff))
|
|
712
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
713
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
682
714
|
|
|
683
715
|
|
|
684
716
|
### Dependencies
|
|
@@ -694,7 +726,7 @@
|
|
|
694
726
|
|
|
695
727
|
### Features
|
|
696
728
|
|
|
697
|
-
* release to production ([70ee2d5](https://github.com/
|
|
729
|
+
* release to production ([70ee2d5](https://github.com/iotaledger/twin-api/commit/70ee2d56a1dc9537d7c9c154d4cb78a235678a3a))
|
|
698
730
|
|
|
699
731
|
|
|
700
732
|
### Dependencies
|
|
@@ -705,7 +737,7 @@
|
|
|
705
737
|
* @twin.org/api-core bumped from ^0.0.0 to ^0.0.1
|
|
706
738
|
* @twin.org/api-models bumped from ^0.0.0 to ^0.0.1
|
|
707
739
|
|
|
708
|
-
## [0.0.1-next.36](https://github.com/
|
|
740
|
+
## [0.0.1-next.36](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.1-next.35...api-auth-entity-storage-service-v0.0.1-next.36) (2025-06-17)
|
|
709
741
|
|
|
710
742
|
|
|
711
743
|
### Miscellaneous Chores
|
|
@@ -721,12 +753,12 @@
|
|
|
721
753
|
* @twin.org/api-core bumped from 0.0.1-next.35 to 0.0.1-next.36
|
|
722
754
|
* @twin.org/api-models bumped from 0.0.1-next.35 to 0.0.1-next.36
|
|
723
755
|
|
|
724
|
-
## [0.0.1-next.35](https://github.com/
|
|
756
|
+
## [0.0.1-next.35](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.1-next.34...api-auth-entity-storage-service-v0.0.1-next.35) (2025-06-11)
|
|
725
757
|
|
|
726
758
|
|
|
727
759
|
### Features
|
|
728
760
|
|
|
729
|
-
* update dependencies ([1171dc4](https://github.com/
|
|
761
|
+
* update dependencies ([1171dc4](https://github.com/iotaledger/twin-api/commit/1171dc416a9481737f6a640e3cf30145768f37e9))
|
|
730
762
|
|
|
731
763
|
|
|
732
764
|
### Dependencies
|
|
@@ -737,7 +769,7 @@
|
|
|
737
769
|
* @twin.org/api-core bumped from 0.0.1-next.34 to 0.0.1-next.35
|
|
738
770
|
* @twin.org/api-models bumped from 0.0.1-next.34 to 0.0.1-next.35
|
|
739
771
|
|
|
740
|
-
## [0.0.1-next.34](https://github.com/
|
|
772
|
+
## [0.0.1-next.34](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.1-next.33...api-auth-entity-storage-service-v0.0.1-next.34) (2025-05-27)
|
|
741
773
|
|
|
742
774
|
|
|
743
775
|
### Miscellaneous Chores
|
|
@@ -753,12 +785,12 @@
|
|
|
753
785
|
* @twin.org/api-core bumped from 0.0.1-next.33 to 0.0.1-next.34
|
|
754
786
|
* @twin.org/api-models bumped from 0.0.1-next.33 to 0.0.1-next.34
|
|
755
787
|
|
|
756
|
-
## [0.0.1-next.33](https://github.com/
|
|
788
|
+
## [0.0.1-next.33](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.1-next.32...api-auth-entity-storage-service-v0.0.1-next.33) (2025-04-17)
|
|
757
789
|
|
|
758
790
|
|
|
759
791
|
### Features
|
|
760
792
|
|
|
761
|
-
* use shared store mechanism ([#19](https://github.com/
|
|
793
|
+
* use shared store mechanism ([#19](https://github.com/iotaledger/twin-api/issues/19)) ([32116df](https://github.com/iotaledger/twin-api/commit/32116df3b4380a30137f5056f242a5c99afa2df9))
|
|
762
794
|
|
|
763
795
|
|
|
764
796
|
### Dependencies
|
|
@@ -769,7 +801,7 @@
|
|
|
769
801
|
* @twin.org/api-core bumped from 0.0.1-next.32 to 0.0.1-next.33
|
|
770
802
|
* @twin.org/api-models bumped from 0.0.1-next.32 to 0.0.1-next.33
|
|
771
803
|
|
|
772
|
-
## [0.0.1-next.32](https://github.com/
|
|
804
|
+
## [0.0.1-next.32](https://github.com/iotaledger/twin-api/compare/api-auth-entity-storage-service-v0.0.1-next.31...api-auth-entity-storage-service-v0.0.1-next.32) (2025-03-28)
|
|
773
805
|
|
|
774
806
|
|
|
775
807
|
### Miscellaneous Chores
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twin.org/api-auth-entity-storage-service",
|
|
3
|
-
"version": "0.0.3-next.
|
|
3
|
+
"version": "0.0.3-next.29",
|
|
4
4
|
"description": "Authentication service implementation and REST routes backed by entity storage.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"node": ">=20.0.0"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@twin.org/api-auth-entity-storage-models": "0.0.3-next.
|
|
18
|
-
"@twin.org/api-core": "0.0.3-next.
|
|
19
|
-
"@twin.org/api-models": "0.0.3-next.
|
|
17
|
+
"@twin.org/api-auth-entity-storage-models": "0.0.3-next.29",
|
|
18
|
+
"@twin.org/api-core": "0.0.3-next.29",
|
|
19
|
+
"@twin.org/api-models": "0.0.3-next.29",
|
|
20
20
|
"@twin.org/background-task-models": "next",
|
|
21
21
|
"@twin.org/context": "next",
|
|
22
22
|
"@twin.org/core": "next",
|