{"version":3,"sources":["../../src/errors.ts","../../src/constants.ts"],"sourcesContent":["import { WAMP_ERROR_MSG } from './constants.js';\n\nexport class UriError extends Error {\n    readonly code = 1;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.URI_ERROR);\n        this.name = 'UriError';\n    }\n}\n\nexport class NoBrokerError extends Error {\n    readonly code = 2;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_BROKER);\n        this.name = 'NoBrokerError';\n    }\n}\n\nexport class NoCallbackError extends Error {\n    readonly code = 3;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_CALLBACK_SPEC);\n        this.name = 'NoCallbackError';\n    }\n}\n\nexport class InvalidParamError extends Error {\n    readonly code = 4;\n    readonly parameter: string;\n\n    constructor (parameter: string) {\n        super(WAMP_ERROR_MSG.INVALID_PARAM);\n        this.name = 'InvalidParamError';\n        this.parameter = parameter;\n    }\n}\n\nexport class NoSerializerAvailableError extends Error {\n    readonly code = 6;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_SERIALIZER_AVAILABLE);\n        this.name = 'NoSerializerAvailableError';\n    }\n}\n\nexport class NonExistUnsubscribeError extends Error {\n    readonly code = 7;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NON_EXIST_UNSUBSCRIBE);\n        this.name = 'NonExistUnsubscribeError';\n    }\n}\n\nexport class NoDealerError extends Error {\n    readonly code = 12;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_DEALER);\n        this.name = 'NoDealerError';\n    }\n}\n\nexport class RPCAlreadyRegisteredError extends Error {\n    readonly code = 15;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.RPC_ALREADY_REGISTERED);\n        this.name = 'RPCAlreadyRegisteredError';\n    }\n}\n\nexport class NonExistRPCUnregistrationError extends Error {\n    readonly code = 17;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NON_EXIST_RPC_UNREG);\n        this.name = 'NonExistRPCUnregistrationError';\n    }\n}\n\n// Not being used at the moment, but left commented here in case we need it\n// export class NonExistRPCInvocationError extends Error {\n//     readonly code = 19;\n//\n//     constructor () {\n//         super(WAMP_ERROR_MSG.NON_EXIST_RPC_INVOCATION);\n//         this.name = 'NonExistRPCInvocationError';\n//     }\n// }\n\nexport class NonExistRPCReqIdError extends Error {\n    readonly code = 20;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NON_EXIST_RPC_REQ_ID);\n        this.name = 'NonExistRPCReqIdError';\n    }\n}\n\nexport class NoRealmError extends Error {\n    readonly code = 21;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_REALM);\n        this.name = 'NoRealmError';\n    }\n}\n\nexport class NoWsOrUrlError extends Error {\n    readonly code = 22;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_WS_OR_URL);\n        this.name = 'NoWsOrUrlError';\n    }\n}\n\nexport class NoCRACallbackOrIdError extends Error {\n    readonly code = 23;\n    readonly errorUri = 'wamp.error.cannot_authenticate';\n\n    constructor () {\n        super(WAMP_ERROR_MSG.NO_CRA_CB_OR_ID);\n        this.name = 'NoCRACallbackOrIdError';\n    }\n}\n\nexport class ChallengeExceptionError extends Error {\n    readonly code = 24;\n    readonly errorUri = 'wamp.error.cannot_authenticate';\n\n    constructor () {\n        super(WAMP_ERROR_MSG.CHALLENGE_EXCEPTION);\n        this.name = 'ChallengeExceptionError';\n    }\n}\n\nexport class PPTNotSupportedError extends Error {\n    readonly code = 25;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.PPT_NOT_SUPPORTED);\n        this.name = 'PPTNotSupportedError';\n    }\n}\n\nexport class PPTInvalidSchemeError extends Error {\n    readonly code = 26;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.PPT_INVALID_SCHEME);\n        this.name = 'PPTInvalidSchemeError';\n    }\n}\n\nexport class PPTSerializerInvalidError extends Error {\n    readonly code = 27;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.PPT_SRLZ_INVALID);\n        this.name = 'PPTSerializerInvalidError';\n    }\n}\n\nexport class PPTSerializationError extends Error {\n    readonly code = 28;\n\n    constructor () {\n        super(WAMP_ERROR_MSG.PPT_SRLZ_ERR);\n        this.name = 'PPTSerializationError';\n    }\n}\n\nexport interface ProtocolViolationErrorParams {\n    errorUri: string;\n    details?: string;\n}\n\nexport class ProtocolViolationError extends Error {\n    readonly code = 29;\n    readonly errorUri: string;\n\n    constructor (errorUri: string, details?: string) {\n        super(details || WAMP_ERROR_MSG.PROTOCOL_VIOLATION);\n        this.name = 'ProtocolViolationError';\n        this.errorUri = errorUri;\n    }\n}\n\nexport interface WampErrorParams {\n    error: string;\n    details: Record<string, unknown>;\n    argsList?: unknown[];\n    argsDict?: Record<string, unknown>;\n}\n\nexport class AbortError extends Error {\n    readonly code = 30;\n    readonly errorUri: string;\n    readonly details: Record<string, unknown>;\n\n    constructor ({ error, details }: { error: string; details: Record<string, unknown> }) {\n        super(WAMP_ERROR_MSG.WAMP_ABORT);\n        this.name = 'AbortedError';\n        this.errorUri = error;\n        this.details = details;\n    }\n}\n\nexport class WampError extends Error {\n    readonly code: number = 31;\n    readonly errorUri: string;\n    readonly details: Record<string, unknown>;\n    readonly argsList?: unknown[];\n    readonly argsDict?: Record<string, unknown>;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super(WAMP_ERROR_MSG.WAMP_GENERAL_ERROR);\n        this.name = 'WampError';\n        this.errorUri = error;\n        this.details = details;\n        this.argsList = argsList;\n        this.argsDict = argsDict;\n    }\n}\n\nexport class SubscribeError extends WampError {\n    override readonly code = 32;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'SubscribeError';\n    }\n}\n\nexport class UnsubscribeError extends WampError {\n    override readonly code = 33;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'UnsubscribeError';\n    }\n}\n\nexport class PublishError extends WampError {\n    override readonly code = 34;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'PublishError';\n    }\n}\n\nexport class RegisterError extends WampError {\n    override readonly code = 35;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'RegisterError';\n    }\n}\n\nexport class UnregisterError extends WampError {\n    override readonly code = 36;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'UnregisterError';\n    }\n}\n\nexport class CallError extends WampError {\n    override readonly code = 37;\n\n    constructor ({ error, details, argsList, argsDict }: WampErrorParams) {\n        super({ error, details, argsList, argsDict });\n        this.name = 'CallError';\n    }\n}\n\nexport class WebsocketError extends Error {\n    readonly code = 38;\n    readonly error: unknown;\n\n    constructor (error: unknown) {\n        super(WAMP_ERROR_MSG.WEBSOCKET_ERROR);\n        this.name = 'WebsocketError';\n        this.error = error;\n    }\n}\n\nexport class FeatureNotSupportedError extends Error {\n    readonly code = 39;\n    readonly role: string;\n    readonly feature: string;\n\n    constructor (role: string, feature: string) {\n        super(WAMP_ERROR_MSG.FEATURE_NOT_SUPPORTED);\n        this.name = 'FeatureNotSupportedError';\n        this.role = role;\n        this.feature = feature;\n    }\n}\n","export const WAMP_MSG_SPEC = {\n    HELLO: 1,\n    WELCOME: 2,\n    ABORT: 3,\n    CHALLENGE: 4,\n    AUTHENTICATE: 5,\n    GOODBYE: 6,\n    ERROR: 8,\n    PUBLISH: 16,\n    PUBLISHED: 17,\n    SUBSCRIBE: 32,\n    SUBSCRIBED: 33,\n    UNSUBSCRIBE: 34,\n    UNSUBSCRIBED: 35,\n    EVENT: 36,\n    CALL: 48,\n    CANCEL: 49,\n    RESULT: 50,\n    REGISTER: 64,\n    REGISTERED: 65,\n    UNREGISTER: 66,\n    UNREGISTERED: 67,\n    INVOCATION: 68,\n    INTERRUPT: 69,\n    YIELD: 70\n} as const;\n\nexport const SUCCESS: { readonly code: 0; readonly error: null } = {\n    code: 0,\n    error: null\n};\n\nexport const WAMP_ERROR_MSG: Record<string, string> = {\n    SUCCESS: 'Success!',\n    URI_ERROR: 'Topic URI doesn\\'t meet requirements!',\n    NO_BROKER: 'Server doesn\\'t provide broker role!',\n    NO_CALLBACK_SPEC: 'No required callback function specified!',\n    INVALID_PARAM: 'Invalid parameter(s) specified!',\n    NO_SERIALIZER_AVAILABLE: 'Server has chosen a serializer, which is not available!',\n    NON_EXIST_UNSUBSCRIBE: 'Trying to unsubscribe from non existent subscription!',\n    NO_DEALER: 'Server doesn\\'t provide dealer role!',\n    RPC_ALREADY_REGISTERED: 'RPC already registered!',\n    NON_EXIST_RPC_UNREG: 'Received rpc unregistration for non existent rpc!',\n    NON_EXIST_RPC_INVOCATION: 'Received invocation for non existent rpc!',\n    NON_EXIST_RPC_REQ_ID: 'No RPC calls in action with specified request ID!',\n    NO_REALM: 'No realm specified!',\n    NO_WS_OR_URL: 'No websocket provided or URL specified is incorrect!',\n    NO_CRA_CB_OR_ID: 'No onChallenge callback or authid was provided for authentication!',\n    CHALLENGE_EXCEPTION: 'Exception raised during challenge processing',\n    PPT_NOT_SUPPORTED: 'Payload Passthru Mode is not supported by the router',\n    PPT_INVALID_SCHEME: 'Provided PPT scheme is invalid',\n    PPT_SRLZ_INVALID: 'Provided PPT serializer is invalid or not supported',\n    PPT_SRLZ_ERR: 'Can not serialize/deserialize payload',\n    PROTOCOL_VIOLATION: 'Protocol violation',\n    WAMP_ABORT: 'Router aborted connection',\n    WAMP_GENERAL_ERROR: 'Wamp error',\n    WEBSOCKET_ERROR: 'Websocket error',\n    FEATURE_NOT_SUPPORTED: 'Feature not supported'\n};\n\nexport const E2EE_SERIALIZERS: readonly string[] = ['cbor'] as const;\n\nexport const isNode: boolean = (typeof process === 'object' && Object.prototype.toString.call(process) === '[object process]');\n\nexport const WAMP_CUSTOM_ATTR_REGEX: RegExp = /^_[a-z0-9_]{3,}$/;\n"],"mappings":"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","names":[]}