@cranberry-money/shared-constants
Version:
Shared constants for Blueberry platform
186 lines • 6.11 kB
JavaScript
import { COMMON_THRESHOLDS } from './config';
// ============================================
// HTTP Constants
// ============================================
export const HTTP_STATUS = {
OK: 200,
CREATED: 201,
ACCEPTED: 202,
NO_CONTENT: 204,
MOVED_PERMANENTLY: 301,
FOUND: 302,
NOT_MODIFIED: 304,
BAD_REQUEST: 400,
UNAUTHORIZED: 401,
FORBIDDEN: 403,
NOT_FOUND: 404,
METHOD_NOT_ALLOWED: 405,
CONFLICT: 409,
UNPROCESSABLE_ENTITY: 422,
TOO_MANY_REQUESTS: 429,
INTERNAL_SERVER_ERROR: 500,
BAD_GATEWAY: 502,
SERVICE_UNAVAILABLE: 503,
GATEWAY_TIMEOUT: 504,
};
export const HTTP_HEADERS = {
ACCEPT: 'Accept',
AUTHORIZATION: 'Authorization',
CONTENT_TYPE: 'Content-Type',
CACHE_CONTROL: 'Cache-Control',
USER_AGENT: 'User-Agent',
X_REQUESTED_WITH: 'X-Requested-With',
X_CSRF_TOKEN: 'X-CSRFToken',
};
export const CONTENT_TYPES = {
JSON: 'application/json',
FORM_DATA: 'multipart/form-data',
URL_ENCODED: 'application/x-www-form-urlencoded',
TEXT: 'text/plain',
HTML: 'text/html',
XML: 'application/xml',
PDF: 'application/pdf',
};
export const HTTP_HEADER_CONTENT_TYPE = HTTP_HEADERS.CONTENT_TYPE;
export const CONTENT_TYPE_APPLICATION_JSON = CONTENT_TYPES.JSON;
// ============================================
// API Configuration
// ============================================
export const API_CONFIG = {
DEFAULT_TIMEOUT: COMMON_THRESHOLDS.DEFAULT_TIMEOUT_MS,
DEFAULT_RETRY_ATTEMPTS: COMMON_THRESHOLDS.DEFAULT_RETRY_ATTEMPTS,
DEFAULT_RETRY_DELAY: COMMON_THRESHOLDS.DEFAULT_RETRY_DELAY_MS,
MAX_RETRY_DELAY: COMMON_THRESHOLDS.MAX_RETRY_DELAY_MS,
REQUEST_DEBOUNCE_MS: COMMON_THRESHOLDS.REQUEST_DEBOUNCE_MS,
};
// ============================================
// Service Constants
// ============================================
export const DOCUMENT_SERVICE = {
RESPONSE_TYPE_BLOB: 'blob',
CONTENT_TYPE_ANY: '*/*',
};
// ============================================
// API Endpoints
// ============================================
export const API_BASE_PATHS = {
V1: '/api',
};
export const ACCOUNT_ENDPOINTS = {
BASE: '/api/accounts/',
DETAIL: (uuid) => `/api/accounts/${uuid}/`,
};
export const AUTH_ENDPOINTS = {
SIGNIN: '/api/signin/',
SIGNOUT: '/api/signout/',
SIGNUP: '/api/signup/',
EMAIL_VERIFICATION: '/api/email-verification/',
RESEND_VERIFICATION: '/api/resend-verification/',
TOKEN_REFRESH: '/api/token/refresh/',
};
export const BANK_ACCOUNT_ENDPOINTS = {
BASE: '/api/bank-accounts/',
DETAIL: (uuid) => `/api/bank-accounts/${uuid}/`,
};
export const CASH_ACCOUNT_ENDPOINTS = {
BASE: '/api/cash-accounts/',
DETAIL: (uuid) => `/api/cash-accounts/${uuid}/`,
};
export const CASH_ACCOUNT_TRANSACTION_ENDPOINTS = {
BASE: '/api/cash-account-transactions/',
DETAIL: (uuid) => `/api/cash-account-transactions/${uuid}/`,
};
export const COUNTRY_ENDPOINTS = {
BASE: '/api/countries/',
DETAIL: (uuid) => `/api/countries/${uuid}/`,
};
export const DOCUMENT_ENDPOINTS = {
// Legacy compliance document endpoints (existing)
AGREEMENT: '/api/documents/agreement/',
MDA: '/api/documents/mda/',
SOA: '/api/documents/soa/',
};
export const IDENTITY_DOCUMENT_ENDPOINTS = {
BASE: '/api/identity-documents/',
DETAIL: (uuid) => `/api/identity-documents/${uuid}/`,
};
export const SUPPORTING_DOCUMENT_ENDPOINTS = {
BASE: '/api/supporting-documents/',
DETAIL: (uuid) => `/api/supporting-documents/${uuid}/`,
};
export const COMPLIANCE_DOCUMENT_ENDPOINTS = {
BASE: '/api/compliance-documents/',
DETAIL: (uuid) => `/api/compliance-documents/${uuid}/`,
AGREEMENT: '/api/documents/agreement/',
MDA: '/api/documents/mda/',
SOA: '/api/documents/soa/',
};
export const INDUSTRY_ENDPOINTS = {
BASE: '/api/industries/',
DETAIL: (uuid) => `/api/industries/${uuid}/`,
};
export const INSTRUMENT_ENDPOINTS = {
BASE: '/api/instruments/',
DETAIL: (uuid) => `/api/instruments/${uuid}/`,
};
export const PORTFOLIO_ENDPOINTS = {
BASE: '/api/portfolios/',
DETAIL: (uuid) => `/api/portfolios/${uuid}/`,
};
export const PORTFOLIO_TEMPLATE_ENDPOINTS = {
BASE: '/api/portfolio-templates/',
DETAIL: (uuid) => `/api/portfolio-templates/${uuid}/`,
RECOMMENDED: '/api/portfolio-templates/recommended/',
};
export const SECTOR_ENDPOINTS = {
BASE: '/api/sectors/',
DETAIL: (uuid) => `/api/sectors/${uuid}/`,
};
export const STOCK_EXCHANGE_ENDPOINTS = {
BASE: '/api/stock-exchanges/',
DETAIL: (uuid) => `/api/stock-exchanges/${uuid}/`,
};
export const TAX_RESIDENCY_ENDPOINTS = {
BASE: '/api/tax-residencies/',
DETAIL: (uuid) => `/api/tax-residencies/${uuid}/`,
};
export const TRADE_ENDPOINTS = {
BASE: '/api/trades/',
DETAIL: (uuid) => `/api/trades/${uuid}/`,
};
export const ORDER_ENDPOINTS = {
BASE: '/api/orders/',
DETAIL: (uuid) => `/api/orders/${uuid}/`,
};
export const USER_PROFILE_ENDPOINTS = {
BASE: '/api/user-profiles/',
DETAIL: (uuid) => `/api/user-profiles/${uuid}/`,
};
export const INVESTMENT_PREFERENCES_ENDPOINTS = {
BASE: '/api/investment-preferences/',
DETAIL: (uuid) => `/api/investment-preferences/${uuid}/`,
};
export const USER_PREFERENCES_ENDPOINTS = {
BASE: '/api/user-preferences/',
};
export const WITHDRAWAL_REQUEST_ENDPOINTS = {
BASE: '/api/withdrawal-requests/',
DETAIL: (uuid) => `/api/withdrawal-requests/${uuid}/`,
};
export const WITHDRAWAL_LIQUIDATION_ENDPOINTS = {
BASE: '/api/withdrawal-liquidations/',
DETAIL: (uuid) => `/api/withdrawal-liquidations/${uuid}/`,
};
export const ASSET_ALLOCATION_ENDPOINTS = {
BASE: '/api/asset-allocations/',
DETAIL: (uuid) => `/api/asset-allocations/${uuid}/`,
};
export const ASSET_HOLDING_ENDPOINTS = {
BASE: '/api/asset-holdings/',
DETAIL: (uuid) => `/api/asset-holdings/${uuid}/`,
};
export const ASSET_HOLDING_SNAPSHOT_ENDPOINTS = {
BASE: '/api/asset-holding-snapshots/',
DETAIL: (id) => `/api/asset-holding-snapshots/${id}/`,
};
//# sourceMappingURL=api.js.map