@fnlb-project/shared 1.5.2 → 1.5.3

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.
@@ -15,6 +15,7 @@ declare enum GeneralErrorCodes {
15
15
  AuthInvalidAPIToken = "net.fnlb.errors.auth.invalid_api_token",
16
16
  AuthInvalidCaptchaToken = "net.fnlb.errors.auth.invalid_captcha_token",
17
17
  AuthUnauthorized = "net.fnlb.errors.auth.unauthorized",
18
+ AuthForbidden = "net.fnlb.errors.auth.forbidden",
18
19
  AuthUserBanned = "net.fnlb.errors.auth.user_banned",
19
20
  Oauth2InvalidCode = "net.fnlb.errors.oauth2.invalid_code",
20
21
  Oauth2InvalidScope = "net.fnlb.errors.oauth2.invalid_scope",
@@ -52,6 +53,7 @@ declare const ErrorCodes: {
52
53
  readonly AuthInvalidAPIToken: GeneralErrorCodes.AuthInvalidAPIToken;
53
54
  readonly AuthInvalidCaptchaToken: GeneralErrorCodes.AuthInvalidCaptchaToken;
54
55
  readonly AuthUnauthorized: GeneralErrorCodes.AuthUnauthorized;
56
+ readonly AuthForbidden: GeneralErrorCodes.AuthForbidden;
55
57
  readonly AuthUserBanned: GeneralErrorCodes.AuthUserBanned;
56
58
  readonly Oauth2InvalidCode: GeneralErrorCodes.Oauth2InvalidCode;
57
59
  readonly Oauth2InvalidScope: GeneralErrorCodes.Oauth2InvalidScope;
@@ -150,7 +152,11 @@ declare const errorMap: {
150
152
  };
151
153
  readonly "net.fnlb.errors.auth.unauthorized": {
152
154
  readonly type: ErrorTypes.General;
153
- readonly message: "You are not authorized to perform this action.";
155
+ readonly message: "You lack the necessary authorization to perform this action.";
156
+ };
157
+ readonly "net.fnlb.errors.auth.forbidden": {
158
+ readonly type: ErrorTypes.General;
159
+ readonly message: "You do not have permission to perform this action.";
154
160
  };
155
161
  readonly "net.fnlb.errors.auth.user_banned": {
156
162
  readonly type: ErrorTypes.General;
@@ -1 +1 @@
1
- var v;((n)=>{n.GenericUnknown="net.fnlb.errors.generic.unknown";n.GenericInternalError="net.fnlb.errors.generic.internal_error";n.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";n.GenericParseFailed="net.fnlb.errors.generic.parse_failed";n.GenericNotFound="net.fnlb.errors.generic.not_found";n.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";n.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";n.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";n.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";n.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";n.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";n.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";n.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";n.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";n.AuthUserBanned="net.fnlb.errors.auth.user_banned";n.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";n.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";n.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";n.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";n.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";n.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";n.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";n.ReleaseNotFound="net.fnlb.errors.release.no_release_found";n.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(v||={});var b;((i)=>{i.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";i.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";i.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";i.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(b||={});var e={...v,...b};var u={[e.GenericUnknown]:{type:"general",message:"An unknown error occurred. Please try again later."},[e.GenericInternalError]:{type:"general",message:"An internal error occurred. Please try again later."},[e.GenericValidationFailed]:{type:"general",message:"Validation of the request data failed."},[e.GenericParseFailed]:{type:"general",message:"The request could not be parsed. This may be due to a malformed input or an unsupported data format."},[e.GenericNotFound]:{type:"general",message:"The requested resource does not exist."},[e.CommonInvalidRequest]:{type:"general",message:"The request is not valid."},[e.CommonUnableToProcessRequest]:{type:"general",message:"Unable to process the request. Please try again later."},[e.CommonInvalidFieldsLength]:{type:"general",message:"The body fields have an invalid length."},[e.CommonRateLimitExceeded]:{type:"general",message:"You are being rate limited."},[e.CommonUnableToSaveToDatabase]:{type:"general",message:"Unable to save changes. Please check all fields."},[e.AuthInvalidToken]:{type:"general",message:"Invalid token provided."},[e.AuthInvalidAPIToken]:{type:"general",message:"Invalid API token provided."},[e.AuthInvalidCaptchaToken]:{type:"general",message:"Sorry, the captcha was not resolved correctly. Please try again."},[e.AuthUnauthorized]:{type:"general",message:"You are not authorized to perform this action."},[e.AuthUserBanned]:{type:"general",message:"Your account is banned from the service."},[e.AuthPasswordConfirmationInvalid]:{type:"input",message:"Sorry, the password is invalid or does not match."},[e.LoginInvalidCredentials]:{type:"input",message:"The email or password is incorrect."},[e.LoginInvalidEmail]:{type:"input",message:"The email is invalid."},[e.LoginInvalidOrUsedEmail]:{type:"input",message:"The email is invalid or is already used."},[e.Oauth2InvalidCode]:{type:"general",message:"Unable to verify your request at this moment. Please try again later."},[e.Oauth2InvalidScope]:{type:"general",message:"Invalid scope provided."},[e.Oauth2TokenInvalid]:{type:"general",message:"Unable to verify Oauth2 token. Please try again later."},[e.Oauth2UnableToFetchUser]:{type:"general",message:"Unable to obtain user information. Please try again later."},[e.Oauth2UnableToFetchConnections]:{type:"general",message:"Unable to obtain connections. Please try again later."},[e.Oauth2UserWithoutConnection]:{type:"general",message:"No connections found. Please add a connection and try again later."},[e.Oauth2ConnectionNotVerified]:{type:"general",message:"The connection is not verified. Please try again later."},[e.ReleaseNotFound]:{type:"general",message:"Sorry, no release found. Please try again later."},[e.ReleaseVersionAlreadyExists]:{type:"general",message:"Release version already exists."}};class s{static getError(a){return u[a]??u[e.GenericUnknown]}static getErrorResponse(a,t){if(Array.isArray(a))return{type:"error",errors:a.map((l)=>s.parseErrorCode(l,t))};else return{type:"error",errors:[s.parseErrorCode(a,t)]}}static parseErrorResponse(a){if(!s.isErrorResponse(a))return null;return a.errors}static isErrorResponse(a){return a?.type==="error"}static parseErrorCode(a,t){let{type:l,message:h}=s.getError(a);if(l==="input"){if(t===void 0)throw new Error("Input is required for Input errors");return{type:l,message:h,errorCode:a,input:t}}else return{type:l,message:h,errorCode:a}}static handleErrors(a,t){switch(a){case"VALIDATION":return[400,s.getErrorResponse(e.GenericValidationFailed)];case"NOT_FOUND":return[404,s.getErrorResponse(e.GenericNotFound)];case"PARSE":return[400,s.getErrorResponse(e.GenericParseFailed)];case"INTERNAL_SERVER_ERROR":return console.error(t),[500,s.getErrorResponse(e.GenericInternalError)];default:return console.error(t),[500,s.getErrorResponse(e.GenericUnknown)]}}}export{s as ErrorHandler};
1
+ var b;((n)=>{n.GenericUnknown="net.fnlb.errors.generic.unknown";n.GenericInternalError="net.fnlb.errors.generic.internal_error";n.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";n.GenericParseFailed="net.fnlb.errors.generic.parse_failed";n.GenericNotFound="net.fnlb.errors.generic.not_found";n.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";n.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";n.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";n.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";n.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";n.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";n.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";n.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";n.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";n.AuthForbidden="net.fnlb.errors.auth.forbidden";n.AuthUserBanned="net.fnlb.errors.auth.user_banned";n.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";n.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";n.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";n.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";n.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";n.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";n.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";n.ReleaseNotFound="net.fnlb.errors.release.no_release_found";n.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(b||={});var v;((i)=>{i.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";i.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";i.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";i.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(v||={});var e={...b,...v};var u={[e.GenericUnknown]:{type:"general",message:"An unknown error occurred. Please try again later."},[e.GenericInternalError]:{type:"general",message:"An internal error occurred. Please try again later."},[e.GenericValidationFailed]:{type:"general",message:"Validation of the request data failed."},[e.GenericParseFailed]:{type:"general",message:"The request could not be parsed. This may be due to a malformed input or an unsupported data format."},[e.GenericNotFound]:{type:"general",message:"The requested resource does not exist."},[e.CommonInvalidRequest]:{type:"general",message:"The request is not valid."},[e.CommonUnableToProcessRequest]:{type:"general",message:"Unable to process the request. Please try again later."},[e.CommonInvalidFieldsLength]:{type:"general",message:"The body fields have an invalid length."},[e.CommonRateLimitExceeded]:{type:"general",message:"You are being rate limited."},[e.CommonUnableToSaveToDatabase]:{type:"general",message:"Unable to save changes. Please check all fields."},[e.AuthInvalidToken]:{type:"general",message:"Invalid token provided."},[e.AuthInvalidAPIToken]:{type:"general",message:"Invalid API token provided."},[e.AuthInvalidCaptchaToken]:{type:"general",message:"Sorry, the captcha was not resolved correctly. Please try again."},[e.AuthUnauthorized]:{type:"general",message:"You lack the necessary authorization to perform this action."},[e.AuthForbidden]:{type:"general",message:"You do not have permission to perform this action."},[e.AuthUserBanned]:{type:"general",message:"Your account is banned from the service."},[e.AuthPasswordConfirmationInvalid]:{type:"input",message:"Sorry, the password is invalid or does not match."},[e.LoginInvalidCredentials]:{type:"input",message:"The email or password is incorrect."},[e.LoginInvalidEmail]:{type:"input",message:"The email is invalid."},[e.LoginInvalidOrUsedEmail]:{type:"input",message:"The email is invalid or is already used."},[e.Oauth2InvalidCode]:{type:"general",message:"Unable to verify your request at this moment. Please try again later."},[e.Oauth2InvalidScope]:{type:"general",message:"Invalid scope provided."},[e.Oauth2TokenInvalid]:{type:"general",message:"Unable to verify Oauth2 token. Please try again later."},[e.Oauth2UnableToFetchUser]:{type:"general",message:"Unable to obtain user information. Please try again later."},[e.Oauth2UnableToFetchConnections]:{type:"general",message:"Unable to obtain connections. Please try again later."},[e.Oauth2UserWithoutConnection]:{type:"general",message:"No connections found. Please add a connection and try again later."},[e.Oauth2ConnectionNotVerified]:{type:"general",message:"The connection is not verified. Please try again later."},[e.ReleaseNotFound]:{type:"general",message:"Sorry, no release found. Please try again later."},[e.ReleaseVersionAlreadyExists]:{type:"general",message:"Release version already exists."}};class s{static getError(a){return u[a]??u[e.GenericUnknown]}static getErrorResponse(a,t){if(Array.isArray(a))return{type:"error",errors:a.map((l)=>s.parseErrorCode(l,t))};else return{type:"error",errors:[s.parseErrorCode(a,t)]}}static parseErrorResponse(a){if(!s.isErrorResponse(a))return null;return a.errors}static isErrorResponse(a){return a?.type==="error"}static parseErrorCode(a,t){let{type:l,message:h}=s.getError(a);if(l==="input"){if(t===void 0)throw new Error("Input is required for Input errors");return{type:l,message:h,errorCode:a,input:t}}else return{type:l,message:h,errorCode:a}}static handleErrors(a,t){switch(a){case"VALIDATION":return[400,s.getErrorResponse(e.GenericValidationFailed)];case"NOT_FOUND":return[404,s.getErrorResponse(e.GenericNotFound)];case"PARSE":return[400,s.getErrorResponse(e.GenericParseFailed)];case"INTERNAL_SERVER_ERROR":return console.error(t),[500,s.getErrorResponse(e.GenericInternalError)];default:return console.error(t),[500,s.getErrorResponse(e.GenericUnknown)]}}}export{s as ErrorHandler};
@@ -15,6 +15,7 @@ declare enum GeneralErrorCodes {
15
15
  AuthInvalidAPIToken = "net.fnlb.errors.auth.invalid_api_token",
16
16
  AuthInvalidCaptchaToken = "net.fnlb.errors.auth.invalid_captcha_token",
17
17
  AuthUnauthorized = "net.fnlb.errors.auth.unauthorized",
18
+ AuthForbidden = "net.fnlb.errors.auth.forbidden",
18
19
  AuthUserBanned = "net.fnlb.errors.auth.user_banned",
19
20
  Oauth2InvalidCode = "net.fnlb.errors.oauth2.invalid_code",
20
21
  Oauth2InvalidScope = "net.fnlb.errors.oauth2.invalid_scope",
@@ -52,6 +53,7 @@ declare const ErrorCodes: {
52
53
  readonly AuthInvalidAPIToken: GeneralErrorCodes.AuthInvalidAPIToken;
53
54
  readonly AuthInvalidCaptchaToken: GeneralErrorCodes.AuthInvalidCaptchaToken;
54
55
  readonly AuthUnauthorized: GeneralErrorCodes.AuthUnauthorized;
56
+ readonly AuthForbidden: GeneralErrorCodes.AuthForbidden;
55
57
  readonly AuthUserBanned: GeneralErrorCodes.AuthUserBanned;
56
58
  readonly Oauth2InvalidCode: GeneralErrorCodes.Oauth2InvalidCode;
57
59
  readonly Oauth2InvalidScope: GeneralErrorCodes.Oauth2InvalidScope;
@@ -1 +1 @@
1
- var d;((t)=>{t.GenericUnknown="net.fnlb.errors.generic.unknown";t.GenericInternalError="net.fnlb.errors.generic.internal_error";t.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";t.GenericParseFailed="net.fnlb.errors.generic.parse_failed";t.GenericNotFound="net.fnlb.errors.generic.not_found";t.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";t.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";t.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";t.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";t.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";t.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";t.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";t.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";t.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";t.AuthUserBanned="net.fnlb.errors.auth.user_banned";t.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";t.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";t.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";t.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";t.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";t.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";t.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";t.ReleaseNotFound="net.fnlb.errors.release.no_release_found";t.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(d||={});var p;((u)=>{u.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";u.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";u.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";u.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(p||={});var e={...d,...p};var o={[e.GenericUnknown]:{type:"general",message:"An unknown error occurred. Please try again later."},[e.GenericInternalError]:{type:"general",message:"An internal error occurred. Please try again later."},[e.GenericValidationFailed]:{type:"general",message:"Validation of the request data failed."},[e.GenericParseFailed]:{type:"general",message:"The request could not be parsed. This may be due to a malformed input or an unsupported data format."},[e.GenericNotFound]:{type:"general",message:"The requested resource does not exist."},[e.CommonInvalidRequest]:{type:"general",message:"The request is not valid."},[e.CommonUnableToProcessRequest]:{type:"general",message:"Unable to process the request. Please try again later."},[e.CommonInvalidFieldsLength]:{type:"general",message:"The body fields have an invalid length."},[e.CommonRateLimitExceeded]:{type:"general",message:"You are being rate limited."},[e.CommonUnableToSaveToDatabase]:{type:"general",message:"Unable to save changes. Please check all fields."},[e.AuthInvalidToken]:{type:"general",message:"Invalid token provided."},[e.AuthInvalidAPIToken]:{type:"general",message:"Invalid API token provided."},[e.AuthInvalidCaptchaToken]:{type:"general",message:"Sorry, the captcha was not resolved correctly. Please try again."},[e.AuthUnauthorized]:{type:"general",message:"You are not authorized to perform this action."},[e.AuthUserBanned]:{type:"general",message:"Your account is banned from the service."},[e.AuthPasswordConfirmationInvalid]:{type:"input",message:"Sorry, the password is invalid or does not match."},[e.LoginInvalidCredentials]:{type:"input",message:"The email or password is incorrect."},[e.LoginInvalidEmail]:{type:"input",message:"The email is invalid."},[e.LoginInvalidOrUsedEmail]:{type:"input",message:"The email is invalid or is already used."},[e.Oauth2InvalidCode]:{type:"general",message:"Unable to verify your request at this moment. Please try again later."},[e.Oauth2InvalidScope]:{type:"general",message:"Invalid scope provided."},[e.Oauth2TokenInvalid]:{type:"general",message:"Unable to verify Oauth2 token. Please try again later."},[e.Oauth2UnableToFetchUser]:{type:"general",message:"Unable to obtain user information. Please try again later."},[e.Oauth2UnableToFetchConnections]:{type:"general",message:"Unable to obtain connections. Please try again later."},[e.Oauth2UserWithoutConnection]:{type:"general",message:"No connections found. Please add a connection and try again later."},[e.Oauth2ConnectionNotVerified]:{type:"general",message:"The connection is not verified. Please try again later."},[e.ReleaseNotFound]:{type:"general",message:"Sorry, no release found. Please try again later."},[e.ReleaseVersionAlreadyExists]:{type:"general",message:"Release version already exists."}};class l{static getError(n){return o[n]??o[e.GenericUnknown]}static getErrorResponse(n,i){if(Array.isArray(n))return{type:"error",errors:n.map((s)=>l.parseErrorCode(s,i))};else return{type:"error",errors:[l.parseErrorCode(n,i)]}}static parseErrorResponse(n){if(!l.isErrorResponse(n))return null;return n.errors}static isErrorResponse(n){return n?.type==="error"}static parseErrorCode(n,i){let{type:s,message:a}=l.getError(n);if(s==="input"){if(i===void 0)throw new Error("Input is required for Input errors");return{type:s,message:a,errorCode:n,input:i}}else return{type:s,message:a,errorCode:n}}static handleErrors(n,i){switch(n){case"VALIDATION":return[400,l.getErrorResponse(e.GenericValidationFailed)];case"NOT_FOUND":return[404,l.getErrorResponse(e.GenericNotFound)];case"PARSE":return[400,l.getErrorResponse(e.GenericParseFailed)];case"INTERNAL_SERVER_ERROR":return console.error(i),[500,l.getErrorResponse(e.GenericInternalError)];default:return console.error(i),[500,l.getErrorResponse(e.GenericUnknown)]}}}class h{static get(n,i,s,a){return this.request(n,i,s,{...a,method:"GET"})}static post(n,i,s,a){return this.request(n,i,s,{...a,method:"POST"})}static put(n,i,s,a){return this.request(n,i,s,{...a,method:"PUT"})}static patch(n,i,s,a){return this.request(n,i,s,{...a,method:"PATCH"})}static delete(n,i,s,a){return this.request(n,i,s,{...a,method:"DELETE"})}static async request(n,i,s,a){let u={...a,body:a.body?JSON.stringify(a.body):void 0,headers:a.headers??{}};if(s)u.headers.Authorization=s;let c=await fetch(n+i,u);return h.parseResponse(c)}static async parseResponse(n){if(n.headers.get("Content-Type")?.includes("text/plain")){let s=await n.text(),a=l.parseErrorResponse(s);if(a)return{data:void 0,errors:a};return{data:s,errors:void 0}}else{let s=await n.json(),a=l.parseErrorResponse(s);if(a)return{data:void 0,errors:a};return{data:s,errors:void 0}}}}export{h as HTTP};
1
+ var d;((s)=>{s.GenericUnknown="net.fnlb.errors.generic.unknown";s.GenericInternalError="net.fnlb.errors.generic.internal_error";s.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";s.GenericParseFailed="net.fnlb.errors.generic.parse_failed";s.GenericNotFound="net.fnlb.errors.generic.not_found";s.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";s.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";s.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";s.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";s.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";s.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";s.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";s.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";s.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";s.AuthForbidden="net.fnlb.errors.auth.forbidden";s.AuthUserBanned="net.fnlb.errors.auth.user_banned";s.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";s.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";s.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";s.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";s.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";s.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";s.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";s.ReleaseNotFound="net.fnlb.errors.release.no_release_found";s.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(d||={});var h;((o)=>{o.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";o.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";o.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";o.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(h||={});var e={...d,...h};var u={[e.GenericUnknown]:{type:"general",message:"An unknown error occurred. Please try again later."},[e.GenericInternalError]:{type:"general",message:"An internal error occurred. Please try again later."},[e.GenericValidationFailed]:{type:"general",message:"Validation of the request data failed."},[e.GenericParseFailed]:{type:"general",message:"The request could not be parsed. This may be due to a malformed input or an unsupported data format."},[e.GenericNotFound]:{type:"general",message:"The requested resource does not exist."},[e.CommonInvalidRequest]:{type:"general",message:"The request is not valid."},[e.CommonUnableToProcessRequest]:{type:"general",message:"Unable to process the request. Please try again later."},[e.CommonInvalidFieldsLength]:{type:"general",message:"The body fields have an invalid length."},[e.CommonRateLimitExceeded]:{type:"general",message:"You are being rate limited."},[e.CommonUnableToSaveToDatabase]:{type:"general",message:"Unable to save changes. Please check all fields."},[e.AuthInvalidToken]:{type:"general",message:"Invalid token provided."},[e.AuthInvalidAPIToken]:{type:"general",message:"Invalid API token provided."},[e.AuthInvalidCaptchaToken]:{type:"general",message:"Sorry, the captcha was not resolved correctly. Please try again."},[e.AuthUnauthorized]:{type:"general",message:"You lack the necessary authorization to perform this action."},[e.AuthForbidden]:{type:"general",message:"You do not have permission to perform this action."},[e.AuthUserBanned]:{type:"general",message:"Your account is banned from the service."},[e.AuthPasswordConfirmationInvalid]:{type:"input",message:"Sorry, the password is invalid or does not match."},[e.LoginInvalidCredentials]:{type:"input",message:"The email or password is incorrect."},[e.LoginInvalidEmail]:{type:"input",message:"The email is invalid."},[e.LoginInvalidOrUsedEmail]:{type:"input",message:"The email is invalid or is already used."},[e.Oauth2InvalidCode]:{type:"general",message:"Unable to verify your request at this moment. Please try again later."},[e.Oauth2InvalidScope]:{type:"general",message:"Invalid scope provided."},[e.Oauth2TokenInvalid]:{type:"general",message:"Unable to verify Oauth2 token. Please try again later."},[e.Oauth2UnableToFetchUser]:{type:"general",message:"Unable to obtain user information. Please try again later."},[e.Oauth2UnableToFetchConnections]:{type:"general",message:"Unable to obtain connections. Please try again later."},[e.Oauth2UserWithoutConnection]:{type:"general",message:"No connections found. Please add a connection and try again later."},[e.Oauth2ConnectionNotVerified]:{type:"general",message:"The connection is not verified. Please try again later."},[e.ReleaseNotFound]:{type:"general",message:"Sorry, no release found. Please try again later."},[e.ReleaseVersionAlreadyExists]:{type:"general",message:"Release version already exists."}};class l{static getError(n){return u[n]??u[e.GenericUnknown]}static getErrorResponse(n,i){if(Array.isArray(n))return{type:"error",errors:n.map((t)=>l.parseErrorCode(t,i))};else return{type:"error",errors:[l.parseErrorCode(n,i)]}}static parseErrorResponse(n){if(!l.isErrorResponse(n))return null;return n.errors}static isErrorResponse(n){return n?.type==="error"}static parseErrorCode(n,i){let{type:t,message:a}=l.getError(n);if(t==="input"){if(i===void 0)throw new Error("Input is required for Input errors");return{type:t,message:a,errorCode:n,input:i}}else return{type:t,message:a,errorCode:n}}static handleErrors(n,i){switch(n){case"VALIDATION":return[400,l.getErrorResponse(e.GenericValidationFailed)];case"NOT_FOUND":return[404,l.getErrorResponse(e.GenericNotFound)];case"PARSE":return[400,l.getErrorResponse(e.GenericParseFailed)];case"INTERNAL_SERVER_ERROR":return console.error(i),[500,l.getErrorResponse(e.GenericInternalError)];default:return console.error(i),[500,l.getErrorResponse(e.GenericUnknown)]}}}class p{static get(n,i,t,a){return this.request(n,i,t,{...a,method:"GET"})}static post(n,i,t,a){return this.request(n,i,t,{...a,method:"POST"})}static put(n,i,t,a){return this.request(n,i,t,{...a,method:"PUT"})}static patch(n,i,t,a){return this.request(n,i,t,{...a,method:"PATCH"})}static delete(n,i,t,a){return this.request(n,i,t,{...a,method:"DELETE"})}static async request(n,i,t,a){let o={...a,body:a.body?JSON.stringify(a.body):void 0,headers:a.headers??{}};if(t)o.headers.Authorization=t;let c=await fetch(n+i,o);return p.parseResponse(c)}static async parseResponse(n){if(n.headers.get("Content-Type")?.includes("text/plain")){let t=await n.text(),a=l.parseErrorResponse(t);if(a)return{data:void 0,errors:a};return{data:t,errors:void 0}}else{let t=await n.json(),a=l.parseErrorResponse(t);if(a)return{data:void 0,errors:a};return{data:t,errors:void 0}}}}export{p as HTTP};
@@ -76,6 +76,7 @@ export declare enum GeneralErrorCodes {
76
76
  AuthInvalidAPIToken = "net.fnlb.errors.auth.invalid_api_token",
77
77
  AuthInvalidCaptchaToken = "net.fnlb.errors.auth.invalid_captcha_token",
78
78
  AuthUnauthorized = "net.fnlb.errors.auth.unauthorized",
79
+ AuthForbidden = "net.fnlb.errors.auth.forbidden",
79
80
  AuthUserBanned = "net.fnlb.errors.auth.user_banned",
80
81
  Oauth2InvalidCode = "net.fnlb.errors.oauth2.invalid_code",
81
82
  Oauth2InvalidScope = "net.fnlb.errors.oauth2.invalid_scope",
@@ -113,6 +114,7 @@ export declare const ErrorCodes: {
113
114
  readonly AuthInvalidAPIToken: GeneralErrorCodes.AuthInvalidAPIToken;
114
115
  readonly AuthInvalidCaptchaToken: GeneralErrorCodes.AuthInvalidCaptchaToken;
115
116
  readonly AuthUnauthorized: GeneralErrorCodes.AuthUnauthorized;
117
+ readonly AuthForbidden: GeneralErrorCodes.AuthForbidden;
116
118
  readonly AuthUserBanned: GeneralErrorCodes.AuthUserBanned;
117
119
  readonly Oauth2InvalidCode: GeneralErrorCodes.Oauth2InvalidCode;
118
120
  readonly Oauth2InvalidScope: GeneralErrorCodes.Oauth2InvalidScope;
@@ -1 +1 @@
1
- var f;((_)=>{_[_.Public=0]="Public";_[_.Private=1]="Private"})(f||={});var d;((e)=>{e[e.Offline=0]="Offline";e[e.Booting=1]="Booting";e[e.Available=2]="Available";e[e.Busy=3]="Busy";e[e.Disconnected=4]="Disconnected"})(d||={});var t;((e)=>{e[e.Neutral=0]="Neutral";e[e.Success=1]="Success";e[e.Info=2]="Info";e[e.Warn=3]="Warn";e[e.Error=4]="Error"})(t||={});var c;((s)=>{s.Win="WIN";s.Mac="MAC";s.Psn="PSN";s.Xbl="XBL";s.Swt="SWT";s.Ios="IOS";s.And="AND";s.Ps5="PS5";s.Xsx="XSX"})(c||={});var O;((_)=>{_[_.Public=0]="Public";_[_.Private=1]="Private"})(O||={});var i;((u)=>{u[u.Equals=0]="Equals";u[u.Includes=1]="Includes";u[u.StartsWith=2]="StartsWith";u[u.EndsWith=3]="EndsWith"})(i||={});var U;((n)=>{n[n.ChatBan=0]="ChatBan";n[n.Kick=1]="Kick";n[n.Block=2]="Block";n[n.RemoveFriend=3]="RemoveFriend";n[n.AddFriend=4]="AddFriend";n[n.Promote=5]="Promote";n[n.Copy=6]="Copy";n[n.Mimic=7]="Mimic";n[n.Hide=8]="Hide";n[n.Show=9]="Show";n[n.Blacklist=10]="Blacklist";n[n.Whitelist=11]="Whitelist"})(U||={});var k;((b)=>{b[b.RequiredParam=0]="RequiredParam";b[b.OptionalParam=1]="OptionalParam";b[b.RequiredSelect=2]="RequiredSelect";b[b.OptionalSelect=3]="OptionalSelect";b[b.RequiredNumericParam=4]="RequiredNumericParam";b[b.OptionalNumericParam=5]="OptionalNumericParam"})(k||={});var v;((l)=>{l.GenericUnknown="net.fnlb.errors.generic.unknown";l.GenericInternalError="net.fnlb.errors.generic.internal_error";l.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";l.GenericParseFailed="net.fnlb.errors.generic.parse_failed";l.GenericNotFound="net.fnlb.errors.generic.not_found";l.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";l.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";l.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";l.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";l.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";l.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";l.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";l.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";l.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";l.AuthUserBanned="net.fnlb.errors.auth.user_banned";l.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";l.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";l.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";l.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";l.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";l.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";l.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";l.ReleaseNotFound="net.fnlb.errors.release.no_release_found";l.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(v||={});var x;((u)=>{u.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";u.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";u.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";u.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(x||={});var p={...v,...x};var I;((u)=>{u.Username="username";u.Email="email";u.Password="password";u.Shared="shared"})(I||={});var q;((_)=>{_.General="general";_.Input="input"})(q||={});var w;((h)=>{h.Default="en";h.De="de";h.Es="es";h.Fr="fr";h.It="it";h.Pl="pl";h.Pt="pt";h.Tr="tr"})(w||={});export{w as Locales,x as InputErrorCodes,v as GeneralErrorCodes,q as ErrorTypes,I as ErrorInputTypes,p as ErrorCodes,t as CommandReplyFormat,k as CommandParamType,i as CategoryConfigTriggerStringDetectionMethod,U as CategoryConfigTriggerAction,c as CategoryConfigSupportedPlatforms,O as CategoryConfigPartyPrivacy,f as BotTypes,d as BotStatus};
1
+ var x;((_)=>{_[_.Public=0]="Public";_[_.Private=1]="Private"})(x||={});var d;((e)=>{e[e.Offline=0]="Offline";e[e.Booting=1]="Booting";e[e.Available=2]="Available";e[e.Busy=3]="Busy";e[e.Disconnected=4]="Disconnected"})(d||={});var t;((e)=>{e[e.Neutral=0]="Neutral";e[e.Success=1]="Success";e[e.Info=2]="Info";e[e.Warn=3]="Warn";e[e.Error=4]="Error"})(t||={});var i;((s)=>{s.Win="WIN";s.Mac="MAC";s.Psn="PSN";s.Xbl="XBL";s.Swt="SWT";s.Ios="IOS";s.And="AND";s.Ps5="PS5";s.Xsx="XSX"})(i||={});var c;((_)=>{_[_.Public=0]="Public";_[_.Private=1]="Private"})(c||={});var O;((u)=>{u[u.Equals=0]="Equals";u[u.Includes=1]="Includes";u[u.StartsWith=2]="StartsWith";u[u.EndsWith=3]="EndsWith"})(O||={});var U;((l)=>{l[l.ChatBan=0]="ChatBan";l[l.Kick=1]="Kick";l[l.Block=2]="Block";l[l.RemoveFriend=3]="RemoveFriend";l[l.AddFriend=4]="AddFriend";l[l.Promote=5]="Promote";l[l.Copy=6]="Copy";l[l.Mimic=7]="Mimic";l[l.Hide=8]="Hide";l[l.Show=9]="Show";l[l.Blacklist=10]="Blacklist";l[l.Whitelist=11]="Whitelist"})(U||={});var k;((b)=>{b[b.RequiredParam=0]="RequiredParam";b[b.OptionalParam=1]="OptionalParam";b[b.RequiredSelect=2]="RequiredSelect";b[b.OptionalSelect=3]="OptionalSelect";b[b.RequiredNumericParam=4]="RequiredNumericParam";b[b.OptionalNumericParam=5]="OptionalNumericParam"})(k||={});var v;((n)=>{n.GenericUnknown="net.fnlb.errors.generic.unknown";n.GenericInternalError="net.fnlb.errors.generic.internal_error";n.GenericValidationFailed="net.fnlb.errors.generic.validation_failed";n.GenericParseFailed="net.fnlb.errors.generic.parse_failed";n.GenericNotFound="net.fnlb.errors.generic.not_found";n.CommonInvalidRequest="net.fnlb.errors.common.invalid_request";n.CommonUnableToProcessRequest="net.fnlb.errors.common.unable_to_process_request";n.CommonInvalidFieldsLength="net.fnlb.errors.common.invalid_body_fields_length";n.CommonRateLimitExceeded="net.fnlb.errors.common.rate_limit_exceeded";n.CommonUnableToSaveToDatabase="net.fnlb.errors.common.unable_to_save_to_database";n.AuthInvalidToken="net.fnlb.errors.auth.invalid_token";n.AuthInvalidAPIToken="net.fnlb.errors.auth.invalid_api_token";n.AuthInvalidCaptchaToken="net.fnlb.errors.auth.invalid_captcha_token";n.AuthUnauthorized="net.fnlb.errors.auth.unauthorized";n.AuthForbidden="net.fnlb.errors.auth.forbidden";n.AuthUserBanned="net.fnlb.errors.auth.user_banned";n.Oauth2InvalidCode="net.fnlb.errors.oauth2.invalid_code";n.Oauth2InvalidScope="net.fnlb.errors.oauth2.invalid_scope";n.Oauth2TokenInvalid="net.fnlb.errors.oauth2.token_invalid";n.Oauth2UnableToFetchUser="net.fnlb.errors.oauth2.unable_to_fetch_user";n.Oauth2UnableToFetchConnections="net.fnlb.errors.oauth2.unable_to_fetch_connections";n.Oauth2UserWithoutConnection="net.fnlb.errors.oauth2.user_without_connection";n.Oauth2ConnectionNotVerified="net.fnlb.errors.oauth2.connection_not_verified";n.ReleaseNotFound="net.fnlb.errors.release.no_release_found";n.ReleaseVersionAlreadyExists="net.fnlb.errors.release.version_already_exists"})(v||={});var f;((u)=>{u.LoginInvalidCredentials="net.fnlb.errors.login.invalid_credentials";u.LoginInvalidEmail="net.fnlb.errors.login.invalid_email";u.LoginInvalidOrUsedEmail="net.fnlb.errors.login.invalid_or_used_email";u.AuthPasswordConfirmationInvalid="net.fnlb.errors.auth.invalid_password_confirmation"})(f||={});var p={...v,...f};var I;((u)=>{u.Username="username";u.Email="email";u.Password="password";u.Shared="shared"})(I||={});var q;((_)=>{_.General="general";_.Input="input"})(q||={});var w;((h)=>{h.Default="en";h.De="de";h.Es="es";h.Fr="fr";h.It="it";h.Pl="pl";h.Pt="pt";h.Tr="tr"})(w||={});export{w as Locales,f as InputErrorCodes,v as GeneralErrorCodes,q as ErrorTypes,I as ErrorInputTypes,p as ErrorCodes,t as CommandReplyFormat,k as CommandParamType,O as CategoryConfigTriggerStringDetectionMethod,U as CategoryConfigTriggerAction,i as CategoryConfigSupportedPlatforms,c as CategoryConfigPartyPrivacy,x as BotTypes,d as BotStatus};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fnlb-project/shared",
3
- "version": "1.5.2",
3
+ "version": "1.5.3",
4
4
  "description": "FNLB Shared Library",
5
5
  "files": ["dist"],
6
6
  "author": "FNLB-Project",