@finatic/client 0.0.141 → 0.0.142

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.
package/dist/index.d.ts CHANGED
@@ -1127,6 +1127,8 @@ declare class ApiClient {
1127
1127
  private tradingContext;
1128
1128
  private companyId;
1129
1129
  private csrfToken;
1130
+ private readonly logger;
1131
+ private buildLoggerExtra;
1130
1132
  constructor(baseUrl: string, deviceInfo?: DeviceInfo$1);
1131
1133
  /**
1132
1134
  * Set session context (session ID, company ID, CSRF token)
@@ -1414,6 +1416,8 @@ declare class FinaticConnect extends EventEmitter {
1414
1416
  private readonly SESSION_VALIDATION_TIMEOUT;
1415
1417
  private readonly SESSION_REFRESH_BUFFER_HOURS;
1416
1418
  private sessionStartTime;
1419
+ private readonly logger;
1420
+ private buildLoggerExtra;
1417
1421
  constructor(options: FinaticConnectOptions, deviceInfo?: DeviceInfo);
1418
1422
  private linkUserToSession;
1419
1423
  /**
@@ -1749,7 +1753,40 @@ declare function validateCustomTheme(theme: PortalThemeConfig): boolean;
1749
1753
  */
1750
1754
  declare function createCustomThemeFromPreset(preset: string, modifications: Partial<PortalThemeConfig>): PortalThemeConfig | null;
1751
1755
 
1756
+ type LogLevel = 'silent' | 'error' | 'warn' | 'info' | 'debug';
1757
+ interface LoggerMetadata {
1758
+ [key: string]: unknown;
1759
+ }
1760
+ interface LoggerExtra {
1761
+ metadata?: LoggerMetadata;
1762
+ module?: string;
1763
+ function?: string;
1764
+ event?: string;
1765
+ duration_ms?: number;
1766
+ error?: unknown;
1767
+ [key: string]: unknown;
1768
+ }
1769
+ interface LoggerOptions {
1770
+ name: string;
1771
+ level?: LogLevel;
1772
+ defaultMetadata?: LoggerMetadata;
1773
+ }
1774
+ interface Logger {
1775
+ getLevel: () => LogLevel;
1776
+ setLevel: (level: LogLevel) => void;
1777
+ debug: (message: string, extra?: LoggerExtra) => void;
1778
+ info: (message: string, extra?: LoggerExtra) => void;
1779
+ warn: (message: string, extra?: LoggerExtra) => void;
1780
+ error: (message: string, extra?: LoggerExtra) => void;
1781
+ exception: (message: string, error: unknown, extra?: LoggerExtra) => void;
1782
+ }
1783
+ type LogVerbosity = 0 | 1 | 2 | 3;
1784
+
1785
+ declare const setupLogger: (nameOrOptions: string | LoggerOptions, level?: LogLevel, defaultMetadata?: LoggerMetadata) => Logger;
1786
+ declare const buildLoggerExtra: (metadata: LoggerMetadata) => LoggerExtra;
1787
+ declare const logStartEnd: (logger: Logger) => <Args extends unknown[], ReturnType>(fn: (...args: Args) => ReturnType | Promise<ReturnType>) => (...args: Args) => Promise<ReturnType>;
1788
+
1752
1789
  declare const portalThemePresets: Record<string, PortalThemeConfig>;
1753
1790
 
1754
- export { ApiClient, ApiError, AuthenticationError, AuthorizationError, BaseError, CompanyAccessError, EventEmitter, FinaticConnect, NetworkError, OrderError, OrderValidationError, PaginatedResult, RateLimitError, SecurityError, SessionError, TokenError, TradingNotEnabledError, appendThemeToURL, createCustomThemeFromPreset, generatePortalThemeURL, getThemePreset, portalThemePresets, validateCustomTheme };
1755
- export type { AccountsFilter, ApiConfig, ApiResponse, BalancesFilter, BrokerAccount, BrokerBalance, BrokerConnection, BrokerDataAccount, BrokerDataOptions, BrokerDataOrder, BrokerDataPosition, BrokerExtras$1 as BrokerExtras, BrokerInfo, BrokerOrder, BrokerOrderParams, BrokerPosition, CryptoOrderOptions, DeviceInfo$1 as DeviceInfo, FilteredAccountsResponse, FilteredBalancesResponse, FilteredOrdersResponse, FilteredPositionsResponse, FinaticConnectOptions, FinaticUserToken, Holding, OptionsOrder, OptionsOrderOptions, Order, OrderEvent, OrderEventsFilter, OrderFill, OrderFillsFilter, OrderGroup, OrderGroupOrder, OrderGroupsFilter, OrderLeg, OrderNotFoundError, OrderResponse, OrdersFilter, OtpRequestResponse, OtpVerifyResponse, PerformanceMetrics, PortalMessage, PortalProps, PortalResponse, PortalTheme, PortalThemeConfig, PortalThemePreset, PortalUrlResponse, Portfolio, PortfolioSnapshot, PositionLot, PositionLotFill, PositionLotFillsFilter, PositionLotsFilter, PositionsFilter, RefreshTokenRequest, RefreshTokenResponse, RequestHeaders, SessionAuthenticateResponse, SessionInitResponse, SessionResponse, SessionStatus, SessionValidationResponse, TokenInfo, TradeAccessDeniedError, TradingContext, UserToken, ValidationError };
1791
+ export { ApiClient, ApiError, AuthenticationError, AuthorizationError, BaseError, CompanyAccessError, EventEmitter, FinaticConnect, NetworkError, OrderError, OrderValidationError, PaginatedResult, RateLimitError, SecurityError, SessionError, TokenError, TradingNotEnabledError, appendThemeToURL, buildLoggerExtra, createCustomThemeFromPreset, generatePortalThemeURL, getThemePreset, logStartEnd, portalThemePresets, setupLogger, validateCustomTheme };
1792
+ export type { AccountsFilter, ApiConfig, ApiResponse, BalancesFilter, BrokerAccount, BrokerBalance, BrokerConnection, BrokerDataAccount, BrokerDataOptions, BrokerDataOrder, BrokerDataPosition, BrokerExtras$1 as BrokerExtras, BrokerInfo, BrokerOrder, BrokerOrderParams, BrokerPosition, CryptoOrderOptions, DeviceInfo$1 as DeviceInfo, FilteredAccountsResponse, FilteredBalancesResponse, FilteredOrdersResponse, FilteredPositionsResponse, FinaticConnectOptions, FinaticUserToken, Holding, LogLevel, LogVerbosity, Logger, LoggerExtra, LoggerMetadata, LoggerOptions, OptionsOrder, OptionsOrderOptions, Order, OrderEvent, OrderEventsFilter, OrderFill, OrderFillsFilter, OrderGroup, OrderGroupOrder, OrderGroupsFilter, OrderLeg, OrderNotFoundError, OrderResponse, OrdersFilter, OtpRequestResponse, OtpVerifyResponse, PerformanceMetrics, PortalMessage, PortalProps, PortalResponse, PortalTheme, PortalThemeConfig, PortalThemePreset, PortalUrlResponse, Portfolio, PortfolioSnapshot, PositionLot, PositionLotFill, PositionLotFillsFilter, PositionLotsFilter, PositionsFilter, RefreshTokenRequest, RefreshTokenResponse, RequestHeaders, SessionAuthenticateResponse, SessionInitResponse, SessionResponse, SessionStatus, SessionValidationResponse, TokenInfo, TradeAccessDeniedError, TradingContext, UserToken, ValidationError };