roicai 0.0.1 → 0.1.0
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/LICENSE +21 -0
- package/README.md +95 -3
- package/dist/generated/_/codec.d.ts +93 -0
- package/dist/generated/_/codec.js +299 -0
- package/dist/generated/_/codec.js.map +1 -0
- package/dist/generated/_/error.d.ts +27 -0
- package/dist/generated/_/error.js +69 -0
- package/dist/generated/_/error.js.map +1 -0
- package/dist/generated/_/hooks/envelope.d.ts +11 -0
- package/dist/generated/_/hooks/envelope.js +16 -0
- package/dist/generated/_/hooks/envelope.js.map +1 -0
- package/dist/generated/_/index.d.ts +3 -0
- package/dist/generated/_/index.js +6 -0
- package/dist/generated/_/index.js.map +1 -0
- package/dist/generated/_/transport.d.ts +146 -0
- package/dist/generated/_/transport.js +221 -0
- package/dist/generated/_/transport.js.map +1 -0
- package/dist/generated/calendar/client.d.ts +13 -0
- package/dist/generated/calendar/client.js +16 -0
- package/dist/generated/calendar/client.js.map +1 -0
- package/dist/generated/calendar/earnings/client.d.ts +48 -0
- package/dist/generated/calendar/earnings/client.js +21 -0
- package/dist/generated/calendar/earnings/client.js.map +1 -0
- package/dist/generated/calendar/earnings/index.d.ts +5 -0
- package/dist/generated/calendar/earnings/index.js +5 -0
- package/dist/generated/calendar/earnings/index.js.map +1 -0
- package/dist/generated/calendar/earnings/models.d.ts +28 -0
- package/dist/generated/calendar/earnings/models.js +9 -0
- package/dist/generated/calendar/earnings/models.js.map +1 -0
- package/dist/generated/calendar/index.d.ts +4 -0
- package/dist/generated/calendar/index.js +5 -0
- package/dist/generated/calendar/index.js.map +1 -0
- package/dist/generated/client.d.ts +43 -0
- package/dist/generated/client.js +91 -0
- package/dist/generated/client.js.map +1 -0
- package/dist/generated/companies/client.d.ts +17 -0
- package/dist/generated/companies/client.js +26 -0
- package/dist/generated/companies/client.js.map +1 -0
- package/dist/generated/companies/employees/client.d.ts +50 -0
- package/dist/generated/companies/employees/client.js +21 -0
- package/dist/generated/companies/employees/client.js.map +1 -0
- package/dist/generated/companies/employees/index.d.ts +5 -0
- package/dist/generated/companies/employees/index.js +5 -0
- package/dist/generated/companies/employees/index.js.map +1 -0
- package/dist/generated/companies/employees/models.d.ts +12 -0
- package/dist/generated/companies/employees/models.js +9 -0
- package/dist/generated/companies/employees/models.js.map +1 -0
- package/dist/generated/companies/index.d.ts +4 -0
- package/dist/generated/companies/index.js +5 -0
- package/dist/generated/companies/index.js.map +1 -0
- package/dist/generated/companies/logos/client.d.ts +11 -0
- package/dist/generated/companies/logos/client.js +10 -0
- package/dist/generated/companies/logos/client.js.map +1 -0
- package/dist/generated/companies/logos/index.d.ts +4 -0
- package/dist/generated/companies/logos/index.js +5 -0
- package/dist/generated/companies/logos/index.js.map +1 -0
- package/dist/generated/companies/profiles/client.d.ts +27 -0
- package/dist/generated/companies/profiles/client.js +20 -0
- package/dist/generated/companies/profiles/client.js.map +1 -0
- package/dist/generated/companies/profiles/index.d.ts +5 -0
- package/dist/generated/companies/profiles/index.js +5 -0
- package/dist/generated/companies/profiles/index.js.map +1 -0
- package/dist/generated/companies/profiles/models.d.ts +64 -0
- package/dist/generated/companies/profiles/models.js +18 -0
- package/dist/generated/companies/profiles/models.js.map +1 -0
- package/dist/generated/companyEvents/client.d.ts +50 -0
- package/dist/generated/companyEvents/client.js +21 -0
- package/dist/generated/companyEvents/client.js.map +1 -0
- package/dist/generated/companyEvents/index.d.ts +5 -0
- package/dist/generated/companyEvents/index.js +5 -0
- package/dist/generated/companyEvents/index.js.map +1 -0
- package/dist/generated/companyEvents/models.d.ts +44 -0
- package/dist/generated/companyEvents/models.js +9 -0
- package/dist/generated/companyEvents/models.js.map +1 -0
- package/dist/generated/countries/client.d.ts +27 -0
- package/dist/generated/countries/client.js +21 -0
- package/dist/generated/countries/client.js.map +1 -0
- package/dist/generated/countries/index.d.ts +5 -0
- package/dist/generated/countries/index.js +5 -0
- package/dist/generated/countries/index.js.map +1 -0
- package/dist/generated/countries/models.d.ts +12 -0
- package/dist/generated/countries/models.js +9 -0
- package/dist/generated/countries/models.js.map +1 -0
- package/dist/generated/documents/audio/client.d.ts +28 -0
- package/dist/generated/documents/audio/client.js +20 -0
- package/dist/generated/documents/audio/client.js.map +1 -0
- package/dist/generated/documents/audio/index.d.ts +5 -0
- package/dist/generated/documents/audio/index.js +5 -0
- package/dist/generated/documents/audio/index.js.map +1 -0
- package/dist/generated/documents/audio/models.d.ts +45 -0
- package/dist/generated/documents/audio/models.js +14 -0
- package/dist/generated/documents/audio/models.js.map +1 -0
- package/dist/generated/documents/client.d.ts +19 -0
- package/dist/generated/documents/client.js +31 -0
- package/dist/generated/documents/client.js.map +1 -0
- package/dist/generated/documents/filings/client.d.ts +28 -0
- package/dist/generated/documents/filings/client.js +20 -0
- package/dist/generated/documents/filings/client.js.map +1 -0
- package/dist/generated/documents/filings/index.d.ts +5 -0
- package/dist/generated/documents/filings/index.js +5 -0
- package/dist/generated/documents/filings/index.js.map +1 -0
- package/dist/generated/documents/filings/models.d.ts +40 -0
- package/dist/generated/documents/filings/models.js +14 -0
- package/dist/generated/documents/filings/models.js.map +1 -0
- package/dist/generated/documents/index.d.ts +4 -0
- package/dist/generated/documents/index.js +5 -0
- package/dist/generated/documents/index.js.map +1 -0
- package/dist/generated/documents/slides/client.d.ts +28 -0
- package/dist/generated/documents/slides/client.js +20 -0
- package/dist/generated/documents/slides/client.js.map +1 -0
- package/dist/generated/documents/slides/index.d.ts +5 -0
- package/dist/generated/documents/slides/index.js +5 -0
- package/dist/generated/documents/slides/index.js.map +1 -0
- package/dist/generated/documents/slides/models.d.ts +39 -0
- package/dist/generated/documents/slides/models.js +14 -0
- package/dist/generated/documents/slides/models.js.map +1 -0
- package/dist/generated/documents/transcripts/client.d.ts +15 -0
- package/dist/generated/documents/transcripts/client.js +21 -0
- package/dist/generated/documents/transcripts/client.js.map +1 -0
- package/dist/generated/documents/transcripts/edited/client.d.ts +32 -0
- package/dist/generated/documents/transcripts/edited/client.js +20 -0
- package/dist/generated/documents/transcripts/edited/client.js.map +1 -0
- package/dist/generated/documents/transcripts/edited/index.d.ts +5 -0
- package/dist/generated/documents/transcripts/edited/index.js +5 -0
- package/dist/generated/documents/transcripts/edited/index.js.map +1 -0
- package/dist/generated/documents/transcripts/edited/models.d.ts +32 -0
- package/dist/generated/documents/transcripts/edited/models.js +12 -0
- package/dist/generated/documents/transcripts/edited/models.js.map +1 -0
- package/dist/generated/documents/transcripts/index.d.ts +4 -0
- package/dist/generated/documents/transcripts/index.js +5 -0
- package/dist/generated/documents/transcripts/index.js.map +1 -0
- package/dist/generated/documents/transcripts/raw/client.d.ts +32 -0
- package/dist/generated/documents/transcripts/raw/client.js +20 -0
- package/dist/generated/documents/transcripts/raw/client.js.map +1 -0
- package/dist/generated/documents/transcripts/raw/index.d.ts +5 -0
- package/dist/generated/documents/transcripts/raw/index.js +5 -0
- package/dist/generated/documents/transcripts/raw/index.js.map +1 -0
- package/dist/generated/documents/transcripts/raw/models.d.ts +26 -0
- package/dist/generated/documents/transcripts/raw/models.js +11 -0
- package/dist/generated/documents/transcripts/raw/models.js.map +1 -0
- package/dist/generated/earningsCalls/bulk/client.d.ts +35 -0
- package/dist/generated/earningsCalls/bulk/client.js +20 -0
- package/dist/generated/earningsCalls/bulk/client.js.map +1 -0
- package/dist/generated/earningsCalls/bulk/index.d.ts +4 -0
- package/dist/generated/earningsCalls/bulk/index.js +5 -0
- package/dist/generated/earningsCalls/bulk/index.js.map +1 -0
- package/dist/generated/earningsCalls/client.d.ts +97 -0
- package/dist/generated/earningsCalls/client.js +34 -0
- package/dist/generated/earningsCalls/client.js.map +1 -0
- package/dist/generated/earningsCalls/index.d.ts +5 -0
- package/dist/generated/earningsCalls/index.js +5 -0
- package/dist/generated/earningsCalls/index.js.map +1 -0
- package/dist/generated/earningsCalls/models.d.ts +34 -0
- package/dist/generated/earningsCalls/models.js +10 -0
- package/dist/generated/earningsCalls/models.js.map +1 -0
- package/dist/generated/exchanges/client.d.ts +32 -0
- package/dist/generated/exchanges/client.js +31 -0
- package/dist/generated/exchanges/client.js.map +1 -0
- package/dist/generated/exchanges/holidays/client.d.ts +31 -0
- package/dist/generated/exchanges/holidays/client.js +20 -0
- package/dist/generated/exchanges/holidays/client.js.map +1 -0
- package/dist/generated/exchanges/holidays/index.d.ts +5 -0
- package/dist/generated/exchanges/holidays/index.js +5 -0
- package/dist/generated/exchanges/holidays/index.js.map +1 -0
- package/dist/generated/exchanges/holidays/models.d.ts +13 -0
- package/dist/generated/exchanges/holidays/models.js +4 -0
- package/dist/generated/exchanges/holidays/models.js.map +1 -0
- package/dist/generated/exchanges/index.d.ts +5 -0
- package/dist/generated/exchanges/index.js +5 -0
- package/dist/generated/exchanges/index.js.map +1 -0
- package/dist/generated/exchanges/models.d.ts +15 -0
- package/dist/generated/exchanges/models.js +9 -0
- package/dist/generated/exchanges/models.js.map +1 -0
- package/dist/generated/exchanges/tradingHours/client.d.ts +31 -0
- package/dist/generated/exchanges/tradingHours/client.js +21 -0
- package/dist/generated/exchanges/tradingHours/client.js.map +1 -0
- package/dist/generated/exchanges/tradingHours/index.d.ts +5 -0
- package/dist/generated/exchanges/tradingHours/index.js +5 -0
- package/dist/generated/exchanges/tradingHours/index.js.map +1 -0
- package/dist/generated/exchanges/tradingHours/models.d.ts +19 -0
- package/dist/generated/exchanges/tradingHours/models.js +7 -0
- package/dist/generated/exchanges/tradingHours/models.js.map +1 -0
- package/dist/generated/forexPairs/client.d.ts +55 -0
- package/dist/generated/forexPairs/client.js +21 -0
- package/dist/generated/forexPairs/client.js.map +1 -0
- package/dist/generated/forexPairs/index.d.ts +5 -0
- package/dist/generated/forexPairs/index.js +5 -0
- package/dist/generated/forexPairs/index.js.map +1 -0
- package/dist/generated/forexPairs/models.d.ts +23 -0
- package/dist/generated/forexPairs/models.js +9 -0
- package/dist/generated/forexPairs/models.js.map +1 -0
- package/dist/generated/forexPrices/client.d.ts +49 -0
- package/dist/generated/forexPrices/client.js +26 -0
- package/dist/generated/forexPrices/client.js.map +1 -0
- package/dist/generated/forexPrices/index.d.ts +5 -0
- package/dist/generated/forexPrices/index.js +5 -0
- package/dist/generated/forexPrices/index.js.map +1 -0
- package/dist/generated/forexPrices/latest/client.d.ts +67 -0
- package/dist/generated/forexPrices/latest/client.js +28 -0
- package/dist/generated/forexPrices/latest/client.js.map +1 -0
- package/dist/generated/forexPrices/latest/index.d.ts +5 -0
- package/dist/generated/forexPrices/latest/index.js +5 -0
- package/dist/generated/forexPrices/latest/index.js.map +1 -0
- package/dist/generated/forexPrices/latest/models.d.ts +36 -0
- package/dist/generated/forexPrices/latest/models.js +8 -0
- package/dist/generated/forexPrices/latest/models.js.map +1 -0
- package/dist/generated/forexPrices/models.d.ts +26 -0
- package/dist/generated/forexPrices/models.js +8 -0
- package/dist/generated/forexPrices/models.js.map +1 -0
- package/dist/generated/fundamentals/balanceSheets/client.d.ts +47 -0
- package/dist/generated/fundamentals/balanceSheets/client.js +21 -0
- package/dist/generated/fundamentals/balanceSheets/client.js.map +1 -0
- package/dist/generated/fundamentals/balanceSheets/index.d.ts +5 -0
- package/dist/generated/fundamentals/balanceSheets/index.js +5 -0
- package/dist/generated/fundamentals/balanceSheets/index.js.map +1 -0
- package/dist/generated/fundamentals/balanceSheets/models.d.ts +98 -0
- package/dist/generated/fundamentals/balanceSheets/models.js +9 -0
- package/dist/generated/fundamentals/balanceSheets/models.js.map +1 -0
- package/dist/generated/fundamentals/bulk/client.d.ts +35 -0
- package/dist/generated/fundamentals/bulk/client.js +20 -0
- package/dist/generated/fundamentals/bulk/client.js.map +1 -0
- package/dist/generated/fundamentals/bulk/index.d.ts +4 -0
- package/dist/generated/fundamentals/bulk/index.js +5 -0
- package/dist/generated/fundamentals/bulk/index.js.map +1 -0
- package/dist/generated/fundamentals/cashFlowStatements/client.d.ts +47 -0
- package/dist/generated/fundamentals/cashFlowStatements/client.js +21 -0
- package/dist/generated/fundamentals/cashFlowStatements/client.js.map +1 -0
- package/dist/generated/fundamentals/cashFlowStatements/index.d.ts +5 -0
- package/dist/generated/fundamentals/cashFlowStatements/index.js +5 -0
- package/dist/generated/fundamentals/cashFlowStatements/index.js.map +1 -0
- package/dist/generated/fundamentals/cashFlowStatements/models.d.ts +71 -0
- package/dist/generated/fundamentals/cashFlowStatements/models.js +9 -0
- package/dist/generated/fundamentals/cashFlowStatements/models.js.map +1 -0
- package/dist/generated/fundamentals/client.d.ts +27 -0
- package/dist/generated/fundamentals/client.js +51 -0
- package/dist/generated/fundamentals/client.js.map +1 -0
- package/dist/generated/fundamentals/enterpriseValues/client.d.ts +47 -0
- package/dist/generated/fundamentals/enterpriseValues/client.js +21 -0
- package/dist/generated/fundamentals/enterpriseValues/client.js.map +1 -0
- package/dist/generated/fundamentals/enterpriseValues/index.d.ts +5 -0
- package/dist/generated/fundamentals/enterpriseValues/index.js +5 -0
- package/dist/generated/fundamentals/enterpriseValues/index.js.map +1 -0
- package/dist/generated/fundamentals/enterpriseValues/models.d.ts +39 -0
- package/dist/generated/fundamentals/enterpriseValues/models.js +9 -0
- package/dist/generated/fundamentals/enterpriseValues/models.js.map +1 -0
- package/dist/generated/fundamentals/incomeStatements/client.d.ts +47 -0
- package/dist/generated/fundamentals/incomeStatements/client.js +21 -0
- package/dist/generated/fundamentals/incomeStatements/client.js.map +1 -0
- package/dist/generated/fundamentals/incomeStatements/index.d.ts +5 -0
- package/dist/generated/fundamentals/incomeStatements/index.js +5 -0
- package/dist/generated/fundamentals/incomeStatements/index.js.map +1 -0
- package/dist/generated/fundamentals/incomeStatements/models.d.ts +62 -0
- package/dist/generated/fundamentals/incomeStatements/models.js +9 -0
- package/dist/generated/fundamentals/incomeStatements/models.js.map +1 -0
- package/dist/generated/fundamentals/index.d.ts +4 -0
- package/dist/generated/fundamentals/index.js +5 -0
- package/dist/generated/fundamentals/index.js.map +1 -0
- package/dist/generated/fundamentals/multiples/client.d.ts +47 -0
- package/dist/generated/fundamentals/multiples/client.js +21 -0
- package/dist/generated/fundamentals/multiples/client.js.map +1 -0
- package/dist/generated/fundamentals/multiples/index.d.ts +5 -0
- package/dist/generated/fundamentals/multiples/index.js +5 -0
- package/dist/generated/fundamentals/multiples/index.js.map +1 -0
- package/dist/generated/fundamentals/multiples/models.d.ts +61 -0
- package/dist/generated/fundamentals/multiples/models.js +9 -0
- package/dist/generated/fundamentals/multiples/models.js.map +1 -0
- package/dist/generated/fundamentals/perShareMetrics/client.d.ts +47 -0
- package/dist/generated/fundamentals/perShareMetrics/client.js +21 -0
- package/dist/generated/fundamentals/perShareMetrics/client.js.map +1 -0
- package/dist/generated/fundamentals/perShareMetrics/index.d.ts +5 -0
- package/dist/generated/fundamentals/perShareMetrics/index.js +5 -0
- package/dist/generated/fundamentals/perShareMetrics/index.js.map +1 -0
- package/dist/generated/fundamentals/perShareMetrics/models.d.ts +33 -0
- package/dist/generated/fundamentals/perShareMetrics/models.js +9 -0
- package/dist/generated/fundamentals/perShareMetrics/models.js.map +1 -0
- package/dist/generated/fundamentals/ratios/client.d.ts +21 -0
- package/dist/generated/fundamentals/ratios/client.js +36 -0
- package/dist/generated/fundamentals/ratios/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/credit/client.d.ts +43 -0
- package/dist/generated/fundamentals/ratios/credit/client.js +21 -0
- package/dist/generated/fundamentals/ratios/credit/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/credit/index.d.ts +5 -0
- package/dist/generated/fundamentals/ratios/credit/index.js +5 -0
- package/dist/generated/fundamentals/ratios/credit/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/credit/models.d.ts +40 -0
- package/dist/generated/fundamentals/ratios/credit/models.js +9 -0
- package/dist/generated/fundamentals/ratios/credit/models.js.map +1 -0
- package/dist/generated/fundamentals/ratios/index.d.ts +4 -0
- package/dist/generated/fundamentals/ratios/index.js +5 -0
- package/dist/generated/fundamentals/ratios/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/liquidity/client.d.ts +47 -0
- package/dist/generated/fundamentals/ratios/liquidity/client.js +21 -0
- package/dist/generated/fundamentals/ratios/liquidity/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/liquidity/index.d.ts +5 -0
- package/dist/generated/fundamentals/ratios/liquidity/index.js +5 -0
- package/dist/generated/fundamentals/ratios/liquidity/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/liquidity/models.d.ts +31 -0
- package/dist/generated/fundamentals/ratios/liquidity/models.js +9 -0
- package/dist/generated/fundamentals/ratios/liquidity/models.js.map +1 -0
- package/dist/generated/fundamentals/ratios/profitability/client.d.ts +43 -0
- package/dist/generated/fundamentals/ratios/profitability/client.js +21 -0
- package/dist/generated/fundamentals/ratios/profitability/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/profitability/index.d.ts +5 -0
- package/dist/generated/fundamentals/ratios/profitability/index.js +5 -0
- package/dist/generated/fundamentals/ratios/profitability/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/profitability/models.d.ts +31 -0
- package/dist/generated/fundamentals/ratios/profitability/models.js +9 -0
- package/dist/generated/fundamentals/ratios/profitability/models.js.map +1 -0
- package/dist/generated/fundamentals/ratios/workingCapital/client.d.ts +47 -0
- package/dist/generated/fundamentals/ratios/workingCapital/client.js +21 -0
- package/dist/generated/fundamentals/ratios/workingCapital/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/workingCapital/index.d.ts +5 -0
- package/dist/generated/fundamentals/ratios/workingCapital/index.js +5 -0
- package/dist/generated/fundamentals/ratios/workingCapital/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/workingCapital/models.d.ts +30 -0
- package/dist/generated/fundamentals/ratios/workingCapital/models.js +9 -0
- package/dist/generated/fundamentals/ratios/workingCapital/models.js.map +1 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/client.d.ts +47 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/client.js +21 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/client.js.map +1 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/index.d.ts +5 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/index.js +5 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/index.js.map +1 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/models.d.ts +36 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/models.js +9 -0
- package/dist/generated/fundamentals/ratios/yieldAnalysis/models.js.map +1 -0
- package/dist/generated/index.d.ts +5 -0
- package/dist/generated/index.js +5 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/industries/client.d.ts +26 -0
- package/dist/generated/industries/client.js +21 -0
- package/dist/generated/industries/client.js.map +1 -0
- package/dist/generated/industries/index.d.ts +5 -0
- package/dist/generated/industries/index.js +5 -0
- package/dist/generated/industries/index.js.map +1 -0
- package/dist/generated/industries/models.d.ts +11 -0
- package/dist/generated/industries/models.js +9 -0
- package/dist/generated/industries/models.js.map +1 -0
- package/dist/generated/markets/client.d.ts +28 -0
- package/dist/generated/markets/client.js +21 -0
- package/dist/generated/markets/client.js.map +1 -0
- package/dist/generated/markets/index.d.ts +5 -0
- package/dist/generated/markets/index.js +5 -0
- package/dist/generated/markets/index.js.map +1 -0
- package/dist/generated/markets/models.d.ts +13 -0
- package/dist/generated/markets/models.js +9 -0
- package/dist/generated/markets/models.js.map +1 -0
- package/dist/generated/models.d.ts +29 -0
- package/dist/generated/models.js +12 -0
- package/dist/generated/models.js.map +1 -0
- package/dist/generated/sectors/client.d.ts +26 -0
- package/dist/generated/sectors/client.js +21 -0
- package/dist/generated/sectors/client.js.map +1 -0
- package/dist/generated/sectors/index.d.ts +5 -0
- package/dist/generated/sectors/index.js +5 -0
- package/dist/generated/sectors/index.js.map +1 -0
- package/dist/generated/sectors/models.d.ts +11 -0
- package/dist/generated/sectors/models.js +9 -0
- package/dist/generated/sectors/models.js.map +1 -0
- package/dist/generated/stockPrices/bulk/client.d.ts +35 -0
- package/dist/generated/stockPrices/bulk/client.js +20 -0
- package/dist/generated/stockPrices/bulk/client.js.map +1 -0
- package/dist/generated/stockPrices/bulk/index.d.ts +4 -0
- package/dist/generated/stockPrices/bulk/index.js +5 -0
- package/dist/generated/stockPrices/bulk/index.js.map +1 -0
- package/dist/generated/stockPrices/client.d.ts +52 -0
- package/dist/generated/stockPrices/client.js +31 -0
- package/dist/generated/stockPrices/client.js.map +1 -0
- package/dist/generated/stockPrices/index.d.ts +5 -0
- package/dist/generated/stockPrices/index.js +5 -0
- package/dist/generated/stockPrices/index.js.map +1 -0
- package/dist/generated/stockPrices/latest/client.d.ts +58 -0
- package/dist/generated/stockPrices/latest/client.js +28 -0
- package/dist/generated/stockPrices/latest/client.js.map +1 -0
- package/dist/generated/stockPrices/latest/index.d.ts +5 -0
- package/dist/generated/stockPrices/latest/index.js +5 -0
- package/dist/generated/stockPrices/latest/index.js.map +1 -0
- package/dist/generated/stockPrices/latest/models.d.ts +43 -0
- package/dist/generated/stockPrices/latest/models.js +8 -0
- package/dist/generated/stockPrices/latest/models.js.map +1 -0
- package/dist/generated/stockPrices/models.d.ts +33 -0
- package/dist/generated/stockPrices/models.js +8 -0
- package/dist/generated/stockPrices/models.js.map +1 -0
- package/dist/generated/stockSplits/client.d.ts +48 -0
- package/dist/generated/stockSplits/client.js +21 -0
- package/dist/generated/stockSplits/client.js.map +1 -0
- package/dist/generated/stockSplits/index.d.ts +5 -0
- package/dist/generated/stockSplits/index.js +5 -0
- package/dist/generated/stockSplits/index.js.map +1 -0
- package/dist/generated/stockSplits/models.d.ts +23 -0
- package/dist/generated/stockSplits/models.js +9 -0
- package/dist/generated/stockSplits/models.js.map +1 -0
- package/dist/generated/tickers/client.d.ts +94 -0
- package/dist/generated/tickers/client.js +36 -0
- package/dist/generated/tickers/client.js.map +1 -0
- package/dist/generated/tickers/index.d.ts +5 -0
- package/dist/generated/tickers/index.js +5 -0
- package/dist/generated/tickers/index.js.map +1 -0
- package/dist/generated/tickers/models.d.ts +55 -0
- package/dist/generated/tickers/models.js +19 -0
- package/dist/generated/tickers/models.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/package.json +43 -6
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 ROIC.ai
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,5 +1,97 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ROIC.ai Node.js SDK
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
TypeScript and JavaScript client for the [ROIC.ai](https://roic.ai) financial data API: tickers, prices, fundamentals, ratios, earnings calls, company events and bulk downloads.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
npm install roicai
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Requires Node.js 20 or later. It also runs in Bun.
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import { createClient } from 'roicai';
|
|
17
|
+
|
|
18
|
+
const roicai = createClient({ token: process.env.ROICAI_API_KEY! });
|
|
19
|
+
|
|
20
|
+
const ticker = await roicai.tickers.retrieve({ identifier: 'NASDAQ:AAPL' });
|
|
21
|
+
|
|
22
|
+
const statements = await roicai.fundamentals.incomeStatements.list({
|
|
23
|
+
identifier: 'NASDAQ:AAPL',
|
|
24
|
+
periodType: 'annual',
|
|
25
|
+
limit: 5,
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const latest = await roicai.stockPrices.latest.retrieve({ identifier: 'NASDAQ:AAPL' });
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Methods are grouped the way the API's URLs are: `/v3.0.0/fundamental/ratios/credit/{identifier}` is `roicai.fundamentals.ratios.credit.list(...)`. Each group has `list`, `retrieve` or `search`.
|
|
32
|
+
|
|
33
|
+
Identifiers are an exchange and symbol separated by a colon (`NASDAQ:AAPL`), a ticker ID (`tkr_...`) or a FIGI.
|
|
34
|
+
|
|
35
|
+
### Fields and dates
|
|
36
|
+
|
|
37
|
+
Fields are camelCase (`periodEndDate`), where the API's JSON is snake_case (`period_end_date`). Dates and timestamps are ISO 8601 strings; pass them to `new Date()` when you need a `Date`.
|
|
38
|
+
|
|
39
|
+
### Errors
|
|
40
|
+
|
|
41
|
+
A request that fails throws an `ApiError` with the HTTP `status` and the API's error in `details`:
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
import { ApiError } from 'roicai';
|
|
45
|
+
|
|
46
|
+
try {
|
|
47
|
+
await roicai.tickers.retrieve({ identifier: 'NASDAQ:NOPE' });
|
|
48
|
+
} catch (err) {
|
|
49
|
+
if (err instanceof ApiError && err.status === 404) {
|
|
50
|
+
// no such ticker
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Options
|
|
56
|
+
|
|
57
|
+
| Option | Default | |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| `token` | required | Your API key, sent as `Authorization: Bearer <token>`. |
|
|
60
|
+
| `baseUrl` | `https://api.roic.ai` | |
|
|
61
|
+
| `fetch` | global `fetch` | |
|
|
62
|
+
| `headers` | | Sent with every request. |
|
|
63
|
+
|
|
64
|
+
Each method also takes `RequestOptions` as its last argument, such as an `AbortSignal`.
|
|
65
|
+
|
|
66
|
+
## Development
|
|
67
|
+
|
|
68
|
+
The client in `src/generated` is generated from the API's OpenAPI document with [forge](https://github.com/cloudflare/forge). Don't edit it by hand: CI regenerates it from `openapi.json` and fails on any difference.
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
npm ci
|
|
72
|
+
npm run build
|
|
73
|
+
npm test # set ROICAI_API_KEY to also run the live tests
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
To regenerate, install jq and forge at the pinned commit, then run the script:
|
|
77
|
+
|
|
78
|
+
```sh
|
|
79
|
+
cargo install --git https://github.com/cloudflare/forge --rev "$(cat .forge-version)" forge
|
|
80
|
+
npm run generate # from https://api.roic.ai/openapi.json
|
|
81
|
+
npm run generate -- ./spec.json # from another document
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
The **Codegen** workflow does this after every API deploy and opens a pull request when the SDK changed. Review the `openapi.json` diff in that pull request: a removed or renamed method, group or field is a breaking change (see [Releasing](#releasing)).
|
|
85
|
+
|
|
86
|
+
`src/index.ts` is the only hand-written source. It sets the default `baseUrl` and re-exports the generated client.
|
|
87
|
+
|
|
88
|
+
## Releasing
|
|
89
|
+
|
|
90
|
+
1. Open a pull request that sets `version` in `package.json` (and `package-lock.json`, with `npm version <version> --no-git-tag-version`). The SDK follows semver: while it is `0.x`, a breaking change needs a new minor version.
|
|
91
|
+
2. After it merges, publish a GitHub release whose tag is `v` plus that version, such as `v0.1.0`. Mark it as a pre-release to publish under the `next` tag instead of `latest`.
|
|
92
|
+
|
|
93
|
+
The **Release** workflow then builds, tests and publishes to npm with a provenance attestation. npm trusts that workflow as the package's publisher, so there is no npm token to rotate.
|
|
94
|
+
|
|
95
|
+
## License
|
|
96
|
+
|
|
97
|
+
[MIT](LICENSE)
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A codec converts a value between its wire form, as JSON has it, and its
|
|
3
|
+
* TypeScript form. A value whose shape does not match the codec is kept as
|
|
4
|
+
* it is.
|
|
5
|
+
*/
|
|
6
|
+
export interface Codec {
|
|
7
|
+
/**
|
|
8
|
+
* Converts a wire value. `source` is the source text of a number whose
|
|
9
|
+
* value JSON.parse could not hold exactly.
|
|
10
|
+
*/
|
|
11
|
+
decode(value: unknown, source?: string): unknown;
|
|
12
|
+
/**
|
|
13
|
+
* Converts a TypeScript value to its wire form.
|
|
14
|
+
*/
|
|
15
|
+
encode(value: unknown): unknown;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A codec, or a function that returns one, so codecs can form cycles.
|
|
19
|
+
*/
|
|
20
|
+
export type CodecRef = Codec | (() => Codec);
|
|
21
|
+
/**
|
|
22
|
+
* An entry of an object codec: the wire name of a key, its field name when
|
|
23
|
+
* it is renamed, and the codec of its value when the value is converted.
|
|
24
|
+
*/
|
|
25
|
+
export type Entry = readonly [wire: string, field: string] | readonly [wire: string, field: string | null, codec: CodecRef];
|
|
26
|
+
type Record = {
|
|
27
|
+
[key: string]: unknown;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Reports whether value is a plain object, as JSON.parse creates them.
|
|
31
|
+
*/
|
|
32
|
+
export declare function isRecord(value: unknown): value is Record;
|
|
33
|
+
/**
|
|
34
|
+
* Sets a key of a new object, including one named `__proto__`.
|
|
35
|
+
*/
|
|
36
|
+
export declare function set(target: Record, key: string, value: unknown): void;
|
|
37
|
+
/**
|
|
38
|
+
* Parses JSON, and keeps the source text of integers too large for a number,
|
|
39
|
+
* so that `int64` decodes them exactly.
|
|
40
|
+
*/
|
|
41
|
+
export declare function parse(text: string): unknown;
|
|
42
|
+
/**
|
|
43
|
+
* Returns the codec of an object, with an entry for each key that is renamed
|
|
44
|
+
* or whose value is converted. Other keys are kept as they are.
|
|
45
|
+
*/
|
|
46
|
+
export declare function object(entries: readonly Entry[]): Codec;
|
|
47
|
+
/**
|
|
48
|
+
* Returns the codec of an array, which converts its items.
|
|
49
|
+
*/
|
|
50
|
+
export declare function array(items: CodecRef): Codec;
|
|
51
|
+
/**
|
|
52
|
+
* Returns the codec of a map, which converts its values and keeps its keys.
|
|
53
|
+
*/
|
|
54
|
+
export declare function map(values: CodecRef): Codec;
|
|
55
|
+
/**
|
|
56
|
+
* Returns the codec of a union. Each member's codec converts the parts of
|
|
57
|
+
* the value it knows, and keeps the rest.
|
|
58
|
+
*/
|
|
59
|
+
export declare function union(members: readonly CodecRef[]): Codec;
|
|
60
|
+
/**
|
|
61
|
+
* Returns the codec of an intersection, which converts the value with the
|
|
62
|
+
* codec of each member.
|
|
63
|
+
*/
|
|
64
|
+
export declare function intersection(members: readonly CodecRef[]): Codec;
|
|
65
|
+
/**
|
|
66
|
+
* Returns the codec of a union that a property discriminates: the codec of
|
|
67
|
+
* the member that the property's value names. `wire` and `field` are the
|
|
68
|
+
* property's names, with `field` null when it is not renamed.
|
|
69
|
+
*/
|
|
70
|
+
export declare function discriminated(wire: string, field: string | null, cases: {
|
|
71
|
+
readonly [value: string]: CodecRef;
|
|
72
|
+
}): Codec;
|
|
73
|
+
/**
|
|
74
|
+
* Converts a `date-time` string and a Temporal.Instant.
|
|
75
|
+
*/
|
|
76
|
+
export declare const instant: Codec;
|
|
77
|
+
/**
|
|
78
|
+
* Converts a `date` string and a Temporal.PlainDate.
|
|
79
|
+
*/
|
|
80
|
+
export declare const date: Codec;
|
|
81
|
+
/**
|
|
82
|
+
* Returns the base64 encoding of bytes.
|
|
83
|
+
*/
|
|
84
|
+
export declare function toBase64(bytes: Uint8Array): string;
|
|
85
|
+
/**
|
|
86
|
+
* Converts a `byte` string, in base64, and a Uint8Array.
|
|
87
|
+
*/
|
|
88
|
+
export declare const bytes: Codec;
|
|
89
|
+
/**
|
|
90
|
+
* Converts an `int64` number and a bigint, without losing digits.
|
|
91
|
+
*/
|
|
92
|
+
export declare const int64: Codec;
|
|
93
|
+
export {};
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
// Code generated by forge. DO NOT EDIT.
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
function resolve(ref) {
|
|
4
|
+
return typeof ref === 'function' ? ref() : ref;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Reports whether value is a plain object, as JSON.parse creates them.
|
|
8
|
+
*/
|
|
9
|
+
export function isRecord(value) {
|
|
10
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const proto = Object.getPrototypeOf(value);
|
|
14
|
+
return proto === Object.prototype || proto === null;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Sets a key of a new object, including one named `__proto__`.
|
|
18
|
+
*/
|
|
19
|
+
export function set(target, key, value) {
|
|
20
|
+
if (key === '__proto__') {
|
|
21
|
+
Object.defineProperty(target, key, {
|
|
22
|
+
value,
|
|
23
|
+
enumerable: true,
|
|
24
|
+
writable: true,
|
|
25
|
+
configurable: true,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
target[key] = value;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// The source text of the numbers that JSON.parse could not hold exactly, by
|
|
33
|
+
// the object or array they are in and their key.
|
|
34
|
+
const sources = new WeakMap();
|
|
35
|
+
function sourceOf(holder, key) {
|
|
36
|
+
return sources.get(holder)?.get(key);
|
|
37
|
+
}
|
|
38
|
+
const recordSource = function (key, value, context) {
|
|
39
|
+
const source = context?.source;
|
|
40
|
+
if (typeof value === 'number' && !Number.isSafeInteger(value) && source !== undefined && /^-?\d+$/.test(source)) {
|
|
41
|
+
const holder = this;
|
|
42
|
+
let keys = sources.get(holder);
|
|
43
|
+
if (keys === undefined) {
|
|
44
|
+
keys = new Map();
|
|
45
|
+
sources.set(holder, keys);
|
|
46
|
+
}
|
|
47
|
+
keys.set(key, source);
|
|
48
|
+
}
|
|
49
|
+
return value;
|
|
50
|
+
};
|
|
51
|
+
const parseWithReviver = JSON.parse;
|
|
52
|
+
/**
|
|
53
|
+
* Parses JSON, and keeps the source text of integers too large for a number,
|
|
54
|
+
* so that `int64` decodes them exactly.
|
|
55
|
+
*/
|
|
56
|
+
export function parse(text) {
|
|
57
|
+
// An integer that a number cannot hold has at least 16 digits.
|
|
58
|
+
if (!/\d{16}/.test(text)) {
|
|
59
|
+
return JSON.parse(text);
|
|
60
|
+
}
|
|
61
|
+
return parseWithReviver(text, recordSource);
|
|
62
|
+
}
|
|
63
|
+
class ObjectCodec {
|
|
64
|
+
#entries;
|
|
65
|
+
#decodeTable;
|
|
66
|
+
#encodeTable;
|
|
67
|
+
constructor(entries) {
|
|
68
|
+
this.#entries = entries;
|
|
69
|
+
}
|
|
70
|
+
#table(decode) {
|
|
71
|
+
const table = new Map();
|
|
72
|
+
for (const [wire, field, codec] of this.#entries) {
|
|
73
|
+
const resolved = codec === undefined ? undefined : resolve(codec);
|
|
74
|
+
if (decode) {
|
|
75
|
+
table.set(wire, [field ?? wire, resolved]);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
table.set(field ?? wire, [wire, resolved]);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return table;
|
|
82
|
+
}
|
|
83
|
+
decode(value) {
|
|
84
|
+
if (!isRecord(value)) {
|
|
85
|
+
return value;
|
|
86
|
+
}
|
|
87
|
+
this.#decodeTable ??= this.#table(true);
|
|
88
|
+
return convert(value, this.#decodeTable, true);
|
|
89
|
+
}
|
|
90
|
+
encode(value) {
|
|
91
|
+
if (!isRecord(value)) {
|
|
92
|
+
return value;
|
|
93
|
+
}
|
|
94
|
+
this.#encodeTable ??= this.#table(false);
|
|
95
|
+
return convert(value, this.#encodeTable, false);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
function convert(value, table, decode) {
|
|
99
|
+
const out = {};
|
|
100
|
+
for (const key of Object.keys(value)) {
|
|
101
|
+
const item = value[key];
|
|
102
|
+
const entry = table.get(key);
|
|
103
|
+
if (entry === undefined) {
|
|
104
|
+
set(out, key, item);
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
const [name, codec] = entry;
|
|
108
|
+
if (codec === undefined || item === undefined || item === null) {
|
|
109
|
+
set(out, name, item);
|
|
110
|
+
}
|
|
111
|
+
else if (decode) {
|
|
112
|
+
set(out, name, codec.decode(item, sourceOf(value, key)));
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
set(out, name, codec.encode(item));
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
return out;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Returns the codec of an object, with an entry for each key that is renamed
|
|
122
|
+
* or whose value is converted. Other keys are kept as they are.
|
|
123
|
+
*/
|
|
124
|
+
export function object(entries) {
|
|
125
|
+
return new ObjectCodec(entries);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Returns the codec of an array, which converts its items.
|
|
129
|
+
*/
|
|
130
|
+
export function array(items) {
|
|
131
|
+
return {
|
|
132
|
+
decode(value) {
|
|
133
|
+
if (!Array.isArray(value)) {
|
|
134
|
+
return value;
|
|
135
|
+
}
|
|
136
|
+
const codec = resolve(items);
|
|
137
|
+
return value.map((item, i) => (item === null ? item : codec.decode(item, sourceOf(value, String(i)))));
|
|
138
|
+
},
|
|
139
|
+
encode(value) {
|
|
140
|
+
if (!Array.isArray(value)) {
|
|
141
|
+
return value;
|
|
142
|
+
}
|
|
143
|
+
const codec = resolve(items);
|
|
144
|
+
return value.map((item) => (item === null || item === undefined ? item : codec.encode(item)));
|
|
145
|
+
},
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Returns the codec of a map, which converts its values and keeps its keys.
|
|
150
|
+
*/
|
|
151
|
+
export function map(values) {
|
|
152
|
+
return {
|
|
153
|
+
decode(value) {
|
|
154
|
+
if (!isRecord(value)) {
|
|
155
|
+
return value;
|
|
156
|
+
}
|
|
157
|
+
const codec = resolve(values);
|
|
158
|
+
const out = {};
|
|
159
|
+
for (const key of Object.keys(value)) {
|
|
160
|
+
const item = value[key];
|
|
161
|
+
set(out, key, item === null ? item : codec.decode(item, sourceOf(value, key)));
|
|
162
|
+
}
|
|
163
|
+
return out;
|
|
164
|
+
},
|
|
165
|
+
encode(value) {
|
|
166
|
+
if (!isRecord(value)) {
|
|
167
|
+
return value;
|
|
168
|
+
}
|
|
169
|
+
const codec = resolve(values);
|
|
170
|
+
const out = {};
|
|
171
|
+
for (const key of Object.keys(value)) {
|
|
172
|
+
const item = value[key];
|
|
173
|
+
set(out, key, item === null || item === undefined ? item : codec.encode(item));
|
|
174
|
+
}
|
|
175
|
+
return out;
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
function every(members) {
|
|
180
|
+
return {
|
|
181
|
+
decode(value, source) {
|
|
182
|
+
for (const member of members) {
|
|
183
|
+
value = resolve(member).decode(value, source);
|
|
184
|
+
}
|
|
185
|
+
return value;
|
|
186
|
+
},
|
|
187
|
+
encode(value) {
|
|
188
|
+
for (const member of members) {
|
|
189
|
+
value = resolve(member).encode(value);
|
|
190
|
+
}
|
|
191
|
+
return value;
|
|
192
|
+
},
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Returns the codec of a union. Each member's codec converts the parts of
|
|
197
|
+
* the value it knows, and keeps the rest.
|
|
198
|
+
*/
|
|
199
|
+
export function union(members) {
|
|
200
|
+
return every(members);
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Returns the codec of an intersection, which converts the value with the
|
|
204
|
+
* codec of each member.
|
|
205
|
+
*/
|
|
206
|
+
export function intersection(members) {
|
|
207
|
+
return every(members);
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Returns the codec of a union that a property discriminates: the codec of
|
|
211
|
+
* the member that the property's value names. `wire` and `field` are the
|
|
212
|
+
* property's names, with `field` null when it is not renamed.
|
|
213
|
+
*/
|
|
214
|
+
export function discriminated(wire, field, cases) {
|
|
215
|
+
const pick = (value) => {
|
|
216
|
+
const key = String(value);
|
|
217
|
+
return Object.hasOwn(cases, key) ? resolve(cases[key]) : undefined;
|
|
218
|
+
};
|
|
219
|
+
return {
|
|
220
|
+
decode(value, source) {
|
|
221
|
+
if (!isRecord(value)) {
|
|
222
|
+
return value;
|
|
223
|
+
}
|
|
224
|
+
const codec = pick(value[wire]);
|
|
225
|
+
return codec === undefined ? value : codec.decode(value, source);
|
|
226
|
+
},
|
|
227
|
+
encode(value) {
|
|
228
|
+
if (!isRecord(value)) {
|
|
229
|
+
return value;
|
|
230
|
+
}
|
|
231
|
+
const codec = pick(value[field ?? wire]);
|
|
232
|
+
return codec === undefined ? value : codec.encode(value);
|
|
233
|
+
},
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
// attempt returns the result of fn, or fallback when the value is not in the
|
|
237
|
+
// form fn expects. A missing global, such as Temporal, is still thrown.
|
|
238
|
+
function attempt(fn, fallback) {
|
|
239
|
+
try {
|
|
240
|
+
return fn();
|
|
241
|
+
}
|
|
242
|
+
catch (e) {
|
|
243
|
+
if (e instanceof ReferenceError) {
|
|
244
|
+
throw e;
|
|
245
|
+
}
|
|
246
|
+
return fallback;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
function toText(value) {
|
|
250
|
+
return typeof value === 'object' && value !== null ? String(value) : value;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Converts a `date-time` string and a Temporal.Instant.
|
|
254
|
+
*/
|
|
255
|
+
export const instant = {
|
|
256
|
+
decode: (value) => (typeof value === 'string' ? attempt(() => Temporal.Instant.from(value), value) : value),
|
|
257
|
+
encode: toText,
|
|
258
|
+
};
|
|
259
|
+
/**
|
|
260
|
+
* Converts a `date` string and a Temporal.PlainDate.
|
|
261
|
+
*/
|
|
262
|
+
export const date = {
|
|
263
|
+
decode: (value) => (typeof value === 'string' ? attempt(() => Temporal.PlainDate.from(value), value) : value),
|
|
264
|
+
encode: toText,
|
|
265
|
+
};
|
|
266
|
+
/**
|
|
267
|
+
* Returns the base64 encoding of bytes.
|
|
268
|
+
*/
|
|
269
|
+
export function toBase64(bytes) {
|
|
270
|
+
let binary = '';
|
|
271
|
+
for (let i = 0; i < bytes.length; i += 0x8000) {
|
|
272
|
+
binary += String.fromCharCode(...bytes.subarray(i, i + 0x8000));
|
|
273
|
+
}
|
|
274
|
+
return btoa(binary);
|
|
275
|
+
}
|
|
276
|
+
function fromBase64(text) {
|
|
277
|
+
const binary = atob(text);
|
|
278
|
+
const bytes = new Uint8Array(binary.length);
|
|
279
|
+
for (let i = 0; i < binary.length; i++) {
|
|
280
|
+
bytes[i] = binary.charCodeAt(i);
|
|
281
|
+
}
|
|
282
|
+
return bytes;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Converts a `byte` string, in base64, and a Uint8Array.
|
|
286
|
+
*/
|
|
287
|
+
export const bytes = {
|
|
288
|
+
decode: (value) => (typeof value === 'string' ? attempt(() => fromBase64(value), value) : value),
|
|
289
|
+
encode: (value) => (value instanceof Uint8Array ? toBase64(value) : value),
|
|
290
|
+
};
|
|
291
|
+
const rawJSON = JSON.rawJSON;
|
|
292
|
+
/**
|
|
293
|
+
* Converts an `int64` number and a bigint, without losing digits.
|
|
294
|
+
*/
|
|
295
|
+
export const int64 = {
|
|
296
|
+
decode: (value, source) => (typeof value === 'number' && Number.isInteger(value) ? BigInt(source ?? value) : value),
|
|
297
|
+
encode: (value) => (typeof value === 'bigint' ? rawJSON(value.toString()) : value),
|
|
298
|
+
};
|
|
299
|
+
//# sourceMappingURL=codec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../src/generated/_/codec.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,oBAAoB;AAgCpB,SAAS,OAAO,CAAC,GAAa;IAC5B,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;AACjD,CAAC;AAID;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAY,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACpD,OAAO,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,GAAW,EAAE,KAAc;IAC7D,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE;YACjC,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,iDAAiD;AACjD,MAAM,OAAO,GAAG,IAAI,OAAO,EAA+B,CAAC;AAE3D,SAAS,QAAQ,CAAC,MAAc,EAAE,GAAW;IAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;AAID,MAAM,YAAY,GAAY,UAAU,GAAG,EAAE,KAAK,EAAE,OAAO;IACzD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,MAAM,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAChH,MAAM,MAAM,GAAG,IAAc,CAAC;QAC9B,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAoD,CAAC;AAEnF;;;GAGG;AACH,MAAM,UAAU,KAAK,CAAC,IAAY;IAChC,+DAA+D;IAC/D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC9C,CAAC;AAID,MAAM,WAAW;IACN,QAAQ,CAAmB;IACpC,YAAY,CAAoB;IAChC,YAAY,CAAoB;IAEhC,YAAY,OAAyB;QACnC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,MAAe;QACpB,MAAM,KAAK,GAAU,IAAI,GAAG,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAClE,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,KAAc;QACnB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,KAAc;QACnB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;CACF;AAED,SAAS,OAAO,CAAC,KAAa,EAAE,KAAY,EAAE,MAAe;IAC3D,MAAM,GAAG,GAAW,EAAE,CAAC;IACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QACD,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC5B,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/D,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,MAAM,EAAE,CAAC;YAClB,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAC,OAAyB;IAC9C,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,KAAe;IACnC,OAAO;QACL,MAAM,CAAC,KAAK;YACV,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClH,CAAC;QACD,MAAM,CAAC,KAAK;YACV,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzG,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,MAAgB;IAClC,OAAO;QACL,MAAM,CAAC,KAAK;YACV,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAW,EAAE,CAAC;YACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACjF,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,CAAC,KAAK;YACV,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAW,EAAE,CAAC;YACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACjF,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,OAA4B;IACzC,OAAO;QACL,MAAM,CAAC,KAAK,EAAE,MAAM;YAClB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAChD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,CAAC,KAAK;YACV,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,KAAK,CAAC,OAA4B;IAChD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,OAA4B;IACvD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,KAAoB,EACpB,KAA6C;IAE7C,MAAM,IAAI,GAAG,CAAC,KAAc,EAAqB,EAAE;QACjD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC,CAAC;IACF,OAAO;QACL,MAAM,CAAC,KAAK,EAAE,MAAM;YAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAChC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,CAAC,KAAK;YACV,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC;YACzC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,wEAAwE;AACxE,SAAS,OAAO,CAAI,EAAW,EAAE,QAAiB;IAChD,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,cAAc,EAAE,CAAC;YAChC,MAAM,CAAC,CAAC;QACV,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3G,MAAM,EAAE,MAAM;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAU;IACzB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7G,MAAM,EAAE,MAAM;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAiB;IACxC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;QAC9C,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChG,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;CAC3E,CAAC;AAGF,MAAM,OAAO,GAAI,IAA+B,CAAC,OAAO,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACnH,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;CACnF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An error response from the API, or a success response whose body is not
|
|
3
|
+
* valid JSON.
|
|
4
|
+
*/
|
|
5
|
+
export declare class ApiError extends Error {
|
|
6
|
+
/**
|
|
7
|
+
* The status of the response.
|
|
8
|
+
*/
|
|
9
|
+
readonly status: number;
|
|
10
|
+
/**
|
|
11
|
+
* The response, whose body has been read.
|
|
12
|
+
*/
|
|
13
|
+
readonly response: Response;
|
|
14
|
+
/**
|
|
15
|
+
* The body decoded as the error the API declares for the status, or the
|
|
16
|
+
* body as text when it declares none or the body does not parse, or
|
|
17
|
+
* undefined when the body is empty.
|
|
18
|
+
*/
|
|
19
|
+
readonly details: unknown;
|
|
20
|
+
constructor(message: string, response: Response, details: unknown, options?: ErrorOptions);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Returns the message of a JSON error body: a string `message`, `error`,
|
|
24
|
+
* `detail` or `title`, then `error.message` or `error.detail`, then the
|
|
25
|
+
* messages of an `errors` array.
|
|
26
|
+
*/
|
|
27
|
+
export declare function errorMessage(body: unknown): string | undefined;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// Code generated by forge. DO NOT EDIT.
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
import { isRecord } from './codec.js';
|
|
4
|
+
/**
|
|
5
|
+
* An error response from the API, or a success response whose body is not
|
|
6
|
+
* valid JSON.
|
|
7
|
+
*/
|
|
8
|
+
export class ApiError extends Error {
|
|
9
|
+
/**
|
|
10
|
+
* The status of the response.
|
|
11
|
+
*/
|
|
12
|
+
status;
|
|
13
|
+
/**
|
|
14
|
+
* The response, whose body has been read.
|
|
15
|
+
*/
|
|
16
|
+
response;
|
|
17
|
+
/**
|
|
18
|
+
* The body decoded as the error the API declares for the status, or the
|
|
19
|
+
* body as text when it declares none or the body does not parse, or
|
|
20
|
+
* undefined when the body is empty.
|
|
21
|
+
*/
|
|
22
|
+
details;
|
|
23
|
+
constructor(message, response, details, options) {
|
|
24
|
+
super(message, options);
|
|
25
|
+
this.name = 'ApiError';
|
|
26
|
+
this.status = response.status;
|
|
27
|
+
this.response = response;
|
|
28
|
+
this.details = details;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
function text(value) {
|
|
32
|
+
return typeof value === 'string' && value !== '' ? value : undefined;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns the message of a JSON error body: a string `message`, `error`,
|
|
36
|
+
* `detail` or `title`, then `error.message` or `error.detail`, then the
|
|
37
|
+
* messages of an `errors` array.
|
|
38
|
+
*/
|
|
39
|
+
export function errorMessage(body) {
|
|
40
|
+
if (!isRecord(body)) {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
const message = text(body['message']) ?? text(body['error']) ?? text(body['detail']) ?? text(body['title']);
|
|
44
|
+
if (message !== undefined) {
|
|
45
|
+
return message;
|
|
46
|
+
}
|
|
47
|
+
const error = body['error'];
|
|
48
|
+
if (isRecord(error)) {
|
|
49
|
+
const nested = text(error['message']) ?? text(error['detail']);
|
|
50
|
+
if (nested !== undefined) {
|
|
51
|
+
return nested;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const errors = body['errors'];
|
|
55
|
+
if (Array.isArray(errors)) {
|
|
56
|
+
const messages = [];
|
|
57
|
+
for (const item of errors) {
|
|
58
|
+
const m = isRecord(item) ? text(item['message']) : text(item);
|
|
59
|
+
if (m !== undefined) {
|
|
60
|
+
messages.push(m);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (messages.length > 0) {
|
|
64
|
+
return messages.join('; ');
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/generated/_/error.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,oBAAoB;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC;;OAEG;IACM,MAAM,CAAS;IACxB;;OAEG;IACM,QAAQ,CAAW;IAC5B;;;;OAIG;IACM,OAAO,CAAU;IAE1B,YAAY,OAAe,EAAE,QAAkB,EAAE,OAAgB,EAAE,OAAsB;QACvF,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5B,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the body a client decodes from a success response, given the
|
|
3
|
+
* response and its JSON body. It runs for every 2XX response with a JSON
|
|
4
|
+
* body, before the body is decoded or paginated.
|
|
5
|
+
*
|
|
6
|
+
* This implementation returns the body as it is. An SDK whose API wraps its
|
|
7
|
+
* payloads in an envelope can replace this file in the generated `_/hooks/`
|
|
8
|
+
* directory with one that returns the part of the envelope that the
|
|
9
|
+
* description declares.
|
|
10
|
+
*/
|
|
11
|
+
export declare function unwrapEnvelope(_response: Response, body: unknown): unknown;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// Code generated by forge. DO NOT EDIT.
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Returns the body a client decodes from a success response, given the
|
|
5
|
+
* response and its JSON body. It runs for every 2XX response with a JSON
|
|
6
|
+
* body, before the body is decoded or paginated.
|
|
7
|
+
*
|
|
8
|
+
* This implementation returns the body as it is. An SDK whose API wraps its
|
|
9
|
+
* payloads in an envelope can replace this file in the generated `_/hooks/`
|
|
10
|
+
* directory with one that returns the part of the envelope that the
|
|
11
|
+
* description declares.
|
|
12
|
+
*/
|
|
13
|
+
export function unwrapEnvelope(_response, body) {
|
|
14
|
+
return body;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=envelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../../../src/generated/_/hooks/envelope.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,oBAAoB;AAEpB;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,SAAmB,EAAE,IAAa;IAC/D,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { array, bytes, type Codec, type CodecRef, date, discriminated, type Entry, instant, int64, intersection, map, object, union, } from './codec.js';
|
|
2
|
+
export { ApiError } from './error.js';
|
|
3
|
+
export { type BaseClientOptions, type Operation, type Pagination, type RequestOptions, Transport, } from './transport.js';
|