UNPKG

wampy

Version:

Amazingly fast, feature-rich, lightweight WAMP Javascript client (for browser and node.js)

1 lines 15.3 kB
{"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":[]}