UNPKG

tradingview-api-adapter

Version:

Real-time market data from TradingView via WebSocket: quotes, candles, symbol info, streaming, groups.

1 lines 114 kB
{"version":3,"sources":["../src/utils/backoff.ts","../src/utils/logger.ts","../src/core/errors.ts","../src/core/transport.ts","../src/core/protocol.ts","../src/core/rate-limiter.types.ts","../src/core/rate-limiter.ts","../src/core/constants.ts","../src/core/session-manager.ts","../src/utils/random-id.ts","../src/types/candle.ts","../src/sessions/chart-session.ts","../src/sessions/quote-session.ts","../src/utils/kebab-to-camel.ts","../src/types/symbol-info.ts"],"names":["debug","log"],"mappings":"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","file":"internal.cjs","sourcesContent":["/**\n * Exponential backoff with jitter.\n *\n * delay(attempt) = min(initial * factor^(attempt-1), max) + jitter\n *\n * `jitter` is a fraction in [0, 1] applied symmetrically: a value of 0.3\n * means the final delay is the base delay ± up to 30%.\n *\n * The random source can be overridden for deterministic tests.\n */\n\nexport interface BackoffOptions {\n /** First attempt delay, in milliseconds. Default: 100. */\n initialDelayMs?: number\n /** Upper bound for any single delay, in milliseconds. Default: 30_000. */\n maxDelayMs?: number\n /** Multiplier applied to each subsequent attempt. Default: 2. */\n factor?: number\n /** Jitter fraction in [0, 1]. Default: 0.3. */\n jitter?: number\n}\n\nexport const DEFAULT_BACKOFF: Required<BackoffOptions> = {\n initialDelayMs: 100,\n maxDelayMs: 30_000,\n factor: 2,\n jitter: 0.3,\n}\n\nexport function calculateBackoff(\n attempt: number,\n opts: BackoffOptions = {},\n random: () => number = Math.random,\n): number {\n if (attempt < 1) throw new Error(`attempt must be >= 1, got ${attempt}`)\n\n const initial = opts.initialDelayMs ?? DEFAULT_BACKOFF.initialDelayMs\n const max = opts.maxDelayMs ?? DEFAULT_BACKOFF.maxDelayMs\n const factor = opts.factor ?? DEFAULT_BACKOFF.factor\n const jitter = clamp(opts.jitter ?? DEFAULT_BACKOFF.jitter, 0, 1)\n\n const base = Math.min(initial * Math.pow(factor, attempt - 1), max)\n // random() in [0, 1) → map to [-1, 1)\n const jitterAmount = base * jitter * (random() * 2 - 1)\n return Math.max(0, Math.round(base + jitterAmount))\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(value, min), max)\n}\n","/**\n * Debug logging wrapper.\n *\n * Usage:\n * const log = createLogger('transport')\n * log('connect() → %s', url)\n *\n * Enable at runtime via the `DEBUG` environment variable:\n * DEBUG=tradingview-adapter:* (all namespaces)\n * DEBUG=tradingview-adapter:transport (one namespace)\n * DEBUG=tradingview-adapter:transport,tradingview-adapter:protocol\n */\n\nimport debug from 'debug'\n\nconst ROOT_NAMESPACE = 'tradingview-adapter'\n\nexport type Logger = debug.Debugger\n\nexport function createLogger(namespace: string): Logger {\n return debug(`${ROOT_NAMESPACE}:${namespace}`)\n}\n","/**\n * Error hierarchy for tradingview-api-adapter.\n *\n * All errors thrown by the library extend `TvError`, so consumers can\n * catch them all with a single `instanceof TvError` check. Specific\n * error classes are provided for the common failure modes.\n */\n\nexport interface TvErrorOptions {\n cause?: unknown\n}\n\nexport class TvError extends Error {\n public override readonly cause?: unknown\n\n constructor(message: string, options: TvErrorOptions = {}) {\n super(message)\n this.name = this.constructor.name\n if (options.cause !== undefined) {\n this.cause = options.cause\n }\n }\n}\n\n/** Raised when the WebSocket transport fails to connect or is lost. */\nexport class TvConnectionError extends TvError {}\n\n/** Raised when incoming bytes cannot be parsed as a valid TradingView frame. */\nexport class TvProtocolError extends TvError {}\n\n/** Raised when a session-level operation fails (quote/chart session). */\nexport class TvSessionError extends TvError {}\n\n/** Raised when a specific symbol cannot be resolved or subscribed. */\nexport class TvSymbolError extends TvError {\n constructor(\n public readonly symbol: string,\n message: string,\n options: TvErrorOptions = {},\n ) {\n super(`[${symbol}] ${message}`, options)\n }\n}\n\n/** Raised when an operation exceeds its configured timeout. */\nexport class TvTimeoutError extends TvError {\n constructor(\n message: string,\n public readonly timeoutMs: number,\n options: TvErrorOptions = {},\n ) {\n super(`${message} (timeout=${timeoutMs}ms)`, options)\n }\n}\n","/**\n * Transport — WebSocket lifecycle with reconnect and message buffering.\n *\n * Responsibilities:\n * - Open / close / destroy the socket\n * - Buffer outbound messages until connected, then flush\n * - Reconnect with exponential backoff + jitter on unexpected drops\n * - Surface raw inbound messages via `onMessage` callback\n * - Integrate with `AbortSignal` for external cancellation\n *\n * Non-responsibilities:\n * - TradingView frame encoding/decoding (see `protocol.ts`)\n * - Session management (see phase 2: `session-manager.ts`)\n * - Heartbeat handling (composed at the SessionManager layer)\n */\n\n// `import type` is erased at compile time — it does NOT cause the `ws`\n// module to be loaded in browser bundles. The actual runtime import\n// happens dynamically inside `loadNodeWs()` below, which is only\n// reached in Node-like runtimes.\nimport type { WebSocket as NodeWebSocket, ClientOptions as NodeWsOptions } from 'ws'\nimport { calculateBackoff } from '../utils/backoff.js'\nimport { createLogger } from '../utils/logger.js'\nimport { TvConnectionError } from './errors.js'\nimport type { CloseInfo, TransportOptions, TransportState } from './transport.types.js'\n\nconst log = createLogger('transport')\n\nconst DEFAULT_MAX_ATTEMPTS = 10\n\n// Use a local interface instead of `typeof import('ws')` so ESLint's\n// consistent-type-imports rule is happy (it forbids `import()` type\n// annotations in favour of top-level `import type`, which we already\n// do above).\ninterface NodeWsModule {\n WebSocket: typeof NodeWebSocket\n}\ntype AnyWebSocket = NodeWebSocket | WebSocket\n\n/**\n * Lazily import the Node `ws` module. Cached after the first call so\n * subsequent reconnects don't pay the import cost. In browser bundles\n * this function is never called, so `ws` never hits the bundle.\n */\nlet cachedNodeWsModule: Promise<NodeWsModule> | null = null\nfunction loadNodeWs(): Promise<NodeWsModule> {\n if (!cachedNodeWsModule) {\n cachedNodeWsModule = import('ws') as unknown as Promise<NodeWsModule>\n }\n return cachedNodeWsModule\n}\n\nexport class Transport {\n private ws: AnyWebSocket | null = null\n private state: TransportState = 'idle'\n private buffer: string[] = []\n private reconnectAttempt = 0\n private reconnectTimer: ReturnType<typeof setTimeout> | null = null\n private manualClose = false\n private readonly onAbort = (): void => {\n log('aborted via signal')\n this.destroy()\n }\n\n constructor(private readonly opts: TransportOptions) {\n if (opts.signal) {\n if (opts.signal.aborted) {\n this.state = 'closed'\n return\n }\n opts.signal.addEventListener('abort', this.onAbort, { once: true })\n }\n }\n\n /** Current transport state. */\n getState(): TransportState {\n return this.state\n }\n\n /** Number of messages currently held in the outbound buffer. */\n getBufferedCount(): number {\n return this.buffer.length\n }\n\n /**\n * Open the WebSocket connection. Resolves when the socket reaches the\n * `open` state, rejects if the initial hand