be-components 7.4.7 → 7.5.1
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/lib/commonjs/ApiOverrides/index.js +4 -0
- package/lib/commonjs/ApiOverrides/index.js.map +1 -1
- package/lib/commonjs/BetRouter/api/index.js +884 -0
- package/lib/commonjs/BetRouter/api/index.js.map +1 -0
- package/lib/commonjs/BetRouter/api/types.js +2 -0
- package/lib/commonjs/BetRouter/api/types.js.map +1 -0
- package/lib/commonjs/BetRouter/components/AccountManager.js +592 -0
- package/lib/commonjs/BetRouter/components/AccountManager.js.map +1 -0
- package/lib/commonjs/BetRouter/components/AdminPortal.js +51 -0
- package/lib/commonjs/BetRouter/components/AdminPortal.js.map +1 -0
- package/lib/commonjs/BetRouter/components/BuyOpportunities.js +550 -0
- package/lib/commonjs/BetRouter/components/BuyOpportunities.js.map +1 -0
- package/lib/commonjs/BetRouter/components/BuyOpportunityCard.js +320 -0
- package/lib/commonjs/BetRouter/components/BuyOpportunityCard.js.map +1 -0
- package/lib/commonjs/BetRouter/components/ContestLiquidity.js +666 -0
- package/lib/commonjs/BetRouter/components/ContestLiquidity.js.map +1 -0
- package/lib/commonjs/BetRouter/components/ContestSelector.js +193 -0
- package/lib/commonjs/BetRouter/components/ContestSelector.js.map +1 -0
- package/lib/commonjs/BetRouter/components/MyOpportunities.js +332 -0
- package/lib/commonjs/BetRouter/components/MyOpportunities.js.map +1 -0
- package/lib/commonjs/BetRouter/components/MyOpportunities.tsx.bak +440 -0
- package/lib/commonjs/BetRouter/components/OpportunityDetailModal.js +545 -0
- package/lib/commonjs/BetRouter/components/OpportunityDetailModal.js.map +1 -0
- package/lib/commonjs/BetRouter/components/OpportunityHistory.js +489 -0
- package/lib/commonjs/BetRouter/components/OpportunityHistory.js.map +1 -0
- package/lib/commonjs/BetRouter/components/PartnerCredentials.js +229 -0
- package/lib/commonjs/BetRouter/components/PartnerCredentials.js.map +1 -0
- package/lib/commonjs/BetRouter/components/PlacedOpportunityModal.js +262 -0
- package/lib/commonjs/BetRouter/components/PlacedOpportunityModal.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/AutoFillView.js +380 -0
- package/lib/commonjs/BetRouter/components/admin/AutoFillView.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/ConfigManager.js +814 -0
- package/lib/commonjs/BetRouter/components/admin/ConfigManager.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/JobManager.js +895 -0
- package/lib/commonjs/BetRouter/components/admin/JobManager.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueContests.js +2844 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueContests.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueInfo.js +378 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueInfo.js.map +1 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueParticipants.js +795 -0
- package/lib/commonjs/BetRouter/components/admin/LeagueParticipants.js.map +1 -0
- package/lib/commonjs/BetRouter/index.js +411 -0
- package/lib/commonjs/BetRouter/index.js.map +1 -0
- package/lib/commonjs/BetRouter/layouts/DesktopAdminLayout.js +312 -0
- package/lib/commonjs/BetRouter/layouts/DesktopAdminLayout.js.map +1 -0
- package/lib/commonjs/BetRouter/layouts/DesktopLayout.js +271 -0
- package/lib/commonjs/BetRouter/layouts/DesktopLayout.js.map +1 -0
- package/lib/commonjs/BetRouter/layouts/MobileAdminLayout.js +435 -0
- package/lib/commonjs/BetRouter/layouts/MobileAdminLayout.js.map +1 -0
- package/lib/commonjs/BetRouter/layouts/MobileLayout.js +293 -0
- package/lib/commonjs/BetRouter/layouts/MobileLayout.js.map +1 -0
- package/lib/commonjs/BetRouter/types/ADMIN_PORTAL.md +863 -0
- package/lib/commonjs/BetRouter/types/ADMIN_PORTAL_SIMPLIFIED.md +1881 -0
- package/lib/commonjs/BetRouter/types/CREDENTIALS_EXAMPLE.md +350 -0
- package/lib/commonjs/BetRouter/types/LIQUIDITY_CLIENT_GUIDE.md +399 -0
- package/lib/commonjs/BetRouter/types/MARKET_LINKING_WORKFLOW.md +682 -0
- package/lib/commonjs/BetRouter/types/MARKET_LINKING_WORKFLOW_V2.md +627 -0
- package/lib/commonjs/BetRouter/types/README.md +249 -0
- package/lib/commonjs/BetRouter/types/accounts.js +2 -0
- package/lib/commonjs/BetRouter/types/accounts.js.map +1 -0
- package/lib/commonjs/BetRouter/types/api-contracts.js +776 -0
- package/lib/commonjs/BetRouter/types/api-contracts.js.map +1 -0
- package/lib/commonjs/BetRouter/types/config.js +2 -0
- package/lib/commonjs/BetRouter/types/config.js.map +1 -0
- package/lib/commonjs/BetRouter/types/contests.js +2 -0
- package/lib/commonjs/BetRouter/types/contests.js.map +1 -0
- package/lib/commonjs/BetRouter/types/credentials.js +90 -0
- package/lib/commonjs/BetRouter/types/credentials.js.map +1 -0
- package/lib/commonjs/BetRouter/types/index.js +149 -0
- package/lib/commonjs/BetRouter/types/index.js.map +1 -0
- package/lib/commonjs/BetRouter/types/jobs.js +2 -0
- package/lib/commonjs/BetRouter/types/jobs.js.map +1 -0
- package/lib/commonjs/BetRouter/types/leagues.js +2 -0
- package/lib/commonjs/BetRouter/types/leagues.js.map +1 -0
- package/lib/commonjs/BetRouter/types/liquidity.js +2 -0
- package/lib/commonjs/BetRouter/types/liquidity.js.map +1 -0
- package/lib/commonjs/BetRouter/types/markets.js +2 -0
- package/lib/commonjs/BetRouter/types/markets.js.map +1 -0
- package/lib/commonjs/BetRouter/types/opportunities.js +6 -0
- package/lib/commonjs/BetRouter/types/opportunities.js.map +1 -0
- package/lib/commonjs/BetRouter/types/orders.js +2 -0
- package/lib/commonjs/BetRouter/types/orders.js.map +1 -0
- package/lib/commonjs/BetRouter/types/participants.js +2 -0
- package/lib/commonjs/BetRouter/types/participants.js.map +1 -0
- package/lib/commonjs/BetRouter/types/partners.js +2 -0
- package/lib/commonjs/BetRouter/types/partners.js.map +1 -0
- package/lib/commonjs/Charts/README.md +310 -0
- package/lib/commonjs/Charts/adapters/TradeChartAdapter.js +406 -0
- package/lib/commonjs/Charts/adapters/TradeChartAdapter.js.map +1 -0
- package/lib/commonjs/Charts/components/BaseLineChart.js +285 -0
- package/lib/commonjs/Charts/components/BaseLineChart.js.map +1 -0
- package/lib/commonjs/Charts/components/LivePriceChart.js +504 -0
- package/lib/commonjs/Charts/components/LivePriceChart.js.map +1 -0
- package/lib/commonjs/Charts/index.js +126 -0
- package/lib/commonjs/Charts/index.js.map +1 -0
- package/lib/commonjs/Charts/themes/chartTheme.js +141 -0
- package/lib/commonjs/Charts/themes/chartTheme.js.map +1 -0
- package/lib/commonjs/Charts/types.js +2 -0
- package/lib/commonjs/Charts/types.js.map +1 -0
- package/lib/commonjs/Charts/utils/formatters.js +194 -0
- package/lib/commonjs/Charts/utils/formatters.js.map +1 -0
- package/lib/commonjs/Components/Dropdown.js +5 -3
- package/lib/commonjs/Components/Dropdown.js.map +1 -1
- package/lib/commonjs/Components/Icons.js +24 -0
- package/lib/commonjs/Components/Icons.js.map +1 -1
- package/lib/commonjs/Components/index.js +34 -0
- package/lib/commonjs/Components/index.js.map +1 -1
- package/lib/commonjs/LocationTracker/LocationStatus.js +5 -2
- package/lib/commonjs/LocationTracker/LocationStatus.js.map +1 -1
- package/lib/commonjs/LocationTracker/api/index.js +2 -2
- package/lib/commonjs/LocationTracker/api/index.js.map +1 -1
- package/lib/commonjs/index.js +28 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.d.js +16 -0
- package/lib/commonjs/types.d.js.map +1 -1
- package/lib/module/ApiOverrides/index.js +4 -0
- package/lib/module/ApiOverrides/index.js.map +1 -1
- package/lib/module/BetRouter/api/index.js +873 -0
- package/lib/module/BetRouter/api/index.js.map +1 -0
- package/lib/module/BetRouter/api/types.js +2 -0
- package/lib/module/BetRouter/api/types.js.map +1 -0
- package/lib/module/BetRouter/components/AccountManager.js +584 -0
- package/lib/module/BetRouter/components/AccountManager.js.map +1 -0
- package/lib/module/BetRouter/components/AdminPortal.js +43 -0
- package/lib/module/BetRouter/components/AdminPortal.js.map +1 -0
- package/lib/module/BetRouter/components/BuyOpportunities.js +542 -0
- package/lib/module/BetRouter/components/BuyOpportunities.js.map +1 -0
- package/lib/module/BetRouter/components/BuyOpportunityCard.js +313 -0
- package/lib/module/BetRouter/components/BuyOpportunityCard.js.map +1 -0
- package/lib/module/BetRouter/components/ContestLiquidity.js +658 -0
- package/lib/module/BetRouter/components/ContestLiquidity.js.map +1 -0
- package/lib/module/BetRouter/components/ContestSelector.js +185 -0
- package/lib/module/BetRouter/components/ContestSelector.js.map +1 -0
- package/lib/module/BetRouter/components/MyOpportunities.js +324 -0
- package/lib/module/BetRouter/components/MyOpportunities.js.map +1 -0
- package/lib/module/BetRouter/components/MyOpportunities.tsx.bak +440 -0
- package/lib/module/BetRouter/components/OpportunityDetailModal.js +538 -0
- package/lib/module/BetRouter/components/OpportunityDetailModal.js.map +1 -0
- package/lib/module/BetRouter/components/OpportunityHistory.js +481 -0
- package/lib/module/BetRouter/components/OpportunityHistory.js.map +1 -0
- package/lib/module/BetRouter/components/PartnerCredentials.js +222 -0
- package/lib/module/BetRouter/components/PartnerCredentials.js.map +1 -0
- package/lib/module/BetRouter/components/PlacedOpportunityModal.js +255 -0
- package/lib/module/BetRouter/components/PlacedOpportunityModal.js.map +1 -0
- package/lib/module/BetRouter/components/admin/AutoFillView.js +372 -0
- package/lib/module/BetRouter/components/admin/AutoFillView.js.map +1 -0
- package/lib/module/BetRouter/components/admin/ConfigManager.js +806 -0
- package/lib/module/BetRouter/components/admin/ConfigManager.js.map +1 -0
- package/lib/module/BetRouter/components/admin/JobManager.js +888 -0
- package/lib/module/BetRouter/components/admin/JobManager.js.map +1 -0
- package/lib/module/BetRouter/components/admin/LeagueContests.js +2836 -0
- package/lib/module/BetRouter/components/admin/LeagueContests.js.map +1 -0
- package/lib/module/BetRouter/components/admin/LeagueInfo.js +372 -0
- package/lib/module/BetRouter/components/admin/LeagueInfo.js.map +1 -0
- package/lib/module/BetRouter/components/admin/LeagueParticipants.js +787 -0
- package/lib/module/BetRouter/components/admin/LeagueParticipants.js.map +1 -0
- package/lib/module/BetRouter/index.js +399 -0
- package/lib/module/BetRouter/index.js.map +1 -0
- package/lib/module/BetRouter/layouts/DesktopAdminLayout.js +304 -0
- package/lib/module/BetRouter/layouts/DesktopAdminLayout.js.map +1 -0
- package/lib/module/BetRouter/layouts/DesktopLayout.js +263 -0
- package/lib/module/BetRouter/layouts/DesktopLayout.js.map +1 -0
- package/lib/module/BetRouter/layouts/MobileAdminLayout.js +427 -0
- package/lib/module/BetRouter/layouts/MobileAdminLayout.js.map +1 -0
- package/lib/module/BetRouter/layouts/MobileLayout.js +285 -0
- package/lib/module/BetRouter/layouts/MobileLayout.js.map +1 -0
- package/lib/module/BetRouter/types/ADMIN_PORTAL.md +863 -0
- package/lib/module/BetRouter/types/ADMIN_PORTAL_SIMPLIFIED.md +1881 -0
- package/lib/module/BetRouter/types/CREDENTIALS_EXAMPLE.md +350 -0
- package/lib/module/BetRouter/types/LIQUIDITY_CLIENT_GUIDE.md +399 -0
- package/lib/module/BetRouter/types/MARKET_LINKING_WORKFLOW.md +682 -0
- package/lib/module/BetRouter/types/MARKET_LINKING_WORKFLOW_V2.md +627 -0
- package/lib/module/BetRouter/types/README.md +249 -0
- package/lib/module/BetRouter/types/accounts.js +2 -0
- package/lib/module/BetRouter/types/accounts.js.map +1 -0
- package/lib/module/BetRouter/types/api-contracts.js +770 -0
- package/lib/module/BetRouter/types/api-contracts.js.map +1 -0
- package/lib/module/BetRouter/types/config.js +2 -0
- package/lib/module/BetRouter/types/config.js.map +1 -0
- package/lib/module/BetRouter/types/contests.js +2 -0
- package/lib/module/BetRouter/types/contests.js.map +1 -0
- package/lib/module/BetRouter/types/credentials.js +78 -0
- package/lib/module/BetRouter/types/credentials.js.map +1 -0
- package/lib/module/BetRouter/types/index.js +17 -0
- package/lib/module/BetRouter/types/index.js.map +1 -0
- package/lib/module/BetRouter/types/jobs.js +2 -0
- package/lib/module/BetRouter/types/jobs.js.map +1 -0
- package/lib/module/BetRouter/types/leagues.js +2 -0
- package/lib/module/BetRouter/types/leagues.js.map +1 -0
- package/lib/module/BetRouter/types/liquidity.js +2 -0
- package/lib/module/BetRouter/types/liquidity.js.map +1 -0
- package/lib/module/BetRouter/types/markets.js +2 -0
- package/lib/module/BetRouter/types/markets.js.map +1 -0
- package/lib/module/BetRouter/types/opportunities.js +2 -0
- package/lib/module/BetRouter/types/opportunities.js.map +1 -0
- package/lib/module/BetRouter/types/orders.js +2 -0
- package/lib/module/BetRouter/types/orders.js.map +1 -0
- package/lib/module/BetRouter/types/participants.js +2 -0
- package/lib/module/BetRouter/types/participants.js.map +1 -0
- package/lib/module/BetRouter/types/partners.js +2 -0
- package/lib/module/BetRouter/types/partners.js.map +1 -0
- package/lib/module/Charts/README.md +310 -0
- package/lib/module/Charts/adapters/TradeChartAdapter.js +400 -0
- package/lib/module/Charts/adapters/TradeChartAdapter.js.map +1 -0
- package/lib/module/Charts/components/BaseLineChart.js +281 -0
- package/lib/module/Charts/components/BaseLineChart.js.map +1 -0
- package/lib/module/Charts/components/LivePriceChart.js +497 -0
- package/lib/module/Charts/components/LivePriceChart.js.map +1 -0
- package/lib/module/Charts/index.js +36 -0
- package/lib/module/Charts/index.js.map +1 -0
- package/lib/module/Charts/themes/chartTheme.js +134 -0
- package/lib/module/Charts/themes/chartTheme.js.map +1 -0
- package/lib/module/Charts/types.js +2 -0
- package/lib/module/Charts/types.js.map +1 -0
- package/lib/module/Charts/utils/formatters.js +178 -0
- package/lib/module/Charts/utils/formatters.js.map +1 -0
- package/lib/module/Components/Dropdown.js +5 -3
- package/lib/module/Components/Dropdown.js.map +1 -1
- package/lib/module/Components/Icons.js +24 -1
- package/lib/module/Components/Icons.js.map +1 -1
- package/lib/module/Components/index.js +3 -0
- package/lib/module/Components/index.js.map +1 -1
- package/lib/module/LocationTracker/LocationStatus.js +5 -2
- package/lib/module/LocationTracker/LocationStatus.js.map +1 -1
- package/lib/module/LocationTracker/api/index.js +2 -2
- package/lib/module/LocationTracker/api/index.js.map +1 -1
- package/lib/module/index.js +5 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.d.js +16 -0
- package/lib/module/types.d.js.map +1 -1
- package/lib/typescript/lib/commonjs/ApiOverrides/index.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/BetRouter/api/index.d.ts +109 -0
- package/lib/typescript/lib/commonjs/BetRouter/api/index.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/api/types.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/api/types.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/AccountManager.d.ts +16 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/AccountManager.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/AdminPortal.d.ts +9 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/AdminPortal.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/BuyOpportunities.d.ts +16 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/BuyOpportunities.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/BuyOpportunityCard.d.ts +14 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/BuyOpportunityCard.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/ContestLiquidity.d.ts +11 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/ContestLiquidity.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/ContestSelector.d.ts +11 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/ContestSelector.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/MyOpportunities.d.ts +8 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/MyOpportunities.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/OpportunityDetailModal.d.ts +14 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/OpportunityDetailModal.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/OpportunityHistory.d.ts +9 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/OpportunityHistory.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/PartnerCredentials.d.ts +10 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/PartnerCredentials.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/PlacedOpportunityModal.d.ts +11 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/PlacedOpportunityModal.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/AutoFillView.d.ts +4 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/AutoFillView.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/ConfigManager.d.ts +4 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/ConfigManager.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/JobManager.d.ts +4 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/JobManager.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueContests.d.ts +7 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueContests.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueInfo.d.ts +6 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueInfo.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueParticipants.d.ts +6 -0
- package/lib/typescript/lib/commonjs/BetRouter/components/admin/LeagueParticipants.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/index.d.ts +8 -0
- package/lib/typescript/lib/commonjs/BetRouter/index.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/DesktopAdminLayout.d.ts +9 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/DesktopAdminLayout.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/DesktopLayout.d.ts +20 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/DesktopLayout.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/MobileAdminLayout.d.ts +9 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/MobileAdminLayout.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/MobileLayout.d.ts +20 -0
- package/lib/typescript/lib/commonjs/BetRouter/layouts/MobileLayout.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/accounts.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/accounts.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/api-contracts.d.ts +743 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/api-contracts.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/config.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/config.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/contests.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/contests.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/credentials.d.ts +56 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/credentials.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/index.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/index.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/jobs.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/jobs.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/leagues.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/leagues.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/liquidity.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/liquidity.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/markets.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/markets.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/opportunities.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/opportunities.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/orders.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/orders.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/participants.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/participants.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/partners.d.ts +2 -0
- package/lib/typescript/lib/commonjs/BetRouter/types/partners.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/adapters/TradeChartAdapter.d.ts +87 -0
- package/lib/typescript/lib/commonjs/Charts/adapters/TradeChartAdapter.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/components/BaseLineChart.d.ts +31 -0
- package/lib/typescript/lib/commonjs/Charts/components/BaseLineChart.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/components/LivePriceChart.d.ts +45 -0
- package/lib/typescript/lib/commonjs/Charts/components/LivePriceChart.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/index.d.ts +95 -0
- package/lib/typescript/lib/commonjs/Charts/index.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/themes/chartTheme.d.ts +106 -0
- package/lib/typescript/lib/commonjs/Charts/themes/chartTheme.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/types.d.ts +2 -0
- package/lib/typescript/lib/commonjs/Charts/types.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Charts/utils/formatters.d.ts +24 -0
- package/lib/typescript/lib/commonjs/Charts/utils/formatters.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Components/Dropdown.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Components/Icons.d.ts +5 -0
- package/lib/typescript/lib/commonjs/Components/Icons.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/LocationTracker/LocationStatus.d.ts +2 -1
- package/lib/typescript/lib/commonjs/LocationTracker/LocationStatus.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/LocationTracker/api/index.d.ts +1 -1
- package/lib/typescript/lib/commonjs/LocationTracker/api/index.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/index.d.ts +6 -1
- package/lib/typescript/lib/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/ApiOverrides/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/BetRouter/api/index.d.ts +108 -0
- package/lib/typescript/lib/module/BetRouter/api/index.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/api/types.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/api/types.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/AccountManager.d.ts +16 -0
- package/lib/typescript/lib/module/BetRouter/components/AccountManager.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/AdminPortal.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/components/AdminPortal.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/BuyOpportunities.d.ts +16 -0
- package/lib/typescript/lib/module/BetRouter/components/BuyOpportunities.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/BuyOpportunityCard.d.ts +14 -0
- package/lib/typescript/lib/module/BetRouter/components/BuyOpportunityCard.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/ContestLiquidity.d.ts +11 -0
- package/lib/typescript/lib/module/BetRouter/components/ContestLiquidity.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/ContestSelector.d.ts +11 -0
- package/lib/typescript/lib/module/BetRouter/components/ContestSelector.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/MyOpportunities.d.ts +8 -0
- package/lib/typescript/lib/module/BetRouter/components/MyOpportunities.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/OpportunityDetailModal.d.ts +15 -0
- package/lib/typescript/lib/module/BetRouter/components/OpportunityDetailModal.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/OpportunityHistory.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/components/OpportunityHistory.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/PartnerCredentials.d.ts +11 -0
- package/lib/typescript/lib/module/BetRouter/components/PartnerCredentials.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/PlacedOpportunityModal.d.ts +12 -0
- package/lib/typescript/lib/module/BetRouter/components/PlacedOpportunityModal.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/AutoFillView.d.ts +4 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/AutoFillView.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/ConfigManager.d.ts +4 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/ConfigManager.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/JobManager.d.ts +4 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/JobManager.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueContests.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueContests.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueInfo.d.ts +6 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueInfo.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueParticipants.d.ts +8 -0
- package/lib/typescript/lib/module/BetRouter/components/admin/LeagueParticipants.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/index.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/index.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/layouts/DesktopAdminLayout.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/layouts/DesktopAdminLayout.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/layouts/DesktopLayout.d.ts +20 -0
- package/lib/typescript/lib/module/BetRouter/layouts/DesktopLayout.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/layouts/MobileAdminLayout.d.ts +9 -0
- package/lib/typescript/lib/module/BetRouter/layouts/MobileAdminLayout.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/layouts/MobileLayout.d.ts +20 -0
- package/lib/typescript/lib/module/BetRouter/layouts/MobileLayout.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/accounts.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/accounts.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/api-contracts.d.ts +742 -0
- package/lib/typescript/lib/module/BetRouter/types/api-contracts.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/config.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/config.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/contests.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/contests.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/credentials.d.ts +55 -0
- package/lib/typescript/lib/module/BetRouter/types/credentials.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/index.d.ts +14 -0
- package/lib/typescript/lib/module/BetRouter/types/index.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/jobs.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/jobs.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/leagues.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/leagues.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/liquidity.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/liquidity.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/markets.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/markets.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/opportunities.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/opportunities.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/orders.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/orders.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/participants.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/participants.d.ts.map +1 -0
- package/lib/typescript/lib/module/BetRouter/types/partners.d.ts +2 -0
- package/lib/typescript/lib/module/BetRouter/types/partners.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/adapters/TradeChartAdapter.d.ts +81 -0
- package/lib/typescript/lib/module/Charts/adapters/TradeChartAdapter.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/components/BaseLineChart.d.ts +31 -0
- package/lib/typescript/lib/module/Charts/components/BaseLineChart.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/components/LivePriceChart.d.ts +41 -0
- package/lib/typescript/lib/module/Charts/components/LivePriceChart.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/index.d.ts +6 -0
- package/lib/typescript/lib/module/Charts/index.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/themes/chartTheme.d.ts +102 -0
- package/lib/typescript/lib/module/Charts/themes/chartTheme.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/types.d.ts +2 -0
- package/lib/typescript/lib/module/Charts/types.d.ts.map +1 -0
- package/lib/typescript/lib/module/Charts/utils/formatters.d.ts +14 -0
- package/lib/typescript/lib/module/Charts/utils/formatters.d.ts.map +1 -0
- package/lib/typescript/lib/module/Components/Dropdown.d.ts.map +1 -1
- package/lib/typescript/lib/module/Components/Icons.d.ts +5 -0
- package/lib/typescript/lib/module/Components/Icons.d.ts.map +1 -1
- package/lib/typescript/lib/module/Components/index.d.ts +1 -0
- package/lib/typescript/lib/module/Components/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/LocationTracker/LocationStatus.d.ts +2 -1
- package/lib/typescript/lib/module/LocationTracker/LocationStatus.d.ts.map +1 -1
- package/lib/typescript/lib/module/LocationTracker/api/index.d.ts +1 -1
- package/lib/typescript/lib/module/index.d.ts +3 -1
- package/lib/typescript/lib/module/index.d.ts.map +1 -1
- package/lib/typescript/src/ApiOverrides/index.d.ts.map +1 -1
- package/lib/typescript/src/BetRouter/api/index.d.ts +115 -0
- package/lib/typescript/src/BetRouter/api/index.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/api/types.d.ts +2 -0
- package/lib/typescript/src/BetRouter/api/types.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/AccountManager.d.ts +18 -0
- package/lib/typescript/src/BetRouter/components/AccountManager.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/AdminPortal.d.ts +15 -0
- package/lib/typescript/src/BetRouter/components/AdminPortal.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/BuyOpportunities.d.ts +24 -0
- package/lib/typescript/src/BetRouter/components/BuyOpportunities.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/BuyOpportunityCard.d.ts +19 -0
- package/lib/typescript/src/BetRouter/components/BuyOpportunityCard.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/ContestLiquidity.d.ts +15 -0
- package/lib/typescript/src/BetRouter/components/ContestLiquidity.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/ContestSelector.d.ts +13 -0
- package/lib/typescript/src/BetRouter/components/ContestSelector.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/MyOpportunities.d.ts +16 -0
- package/lib/typescript/src/BetRouter/components/MyOpportunities.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/OpportunityDetailModal.d.ts +21 -0
- package/lib/typescript/src/BetRouter/components/OpportunityDetailModal.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/OpportunityHistory.d.ts +20 -0
- package/lib/typescript/src/BetRouter/components/OpportunityHistory.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/PartnerCredentials.d.ts +12 -0
- package/lib/typescript/src/BetRouter/components/PartnerCredentials.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/PlacedOpportunityModal.d.ts +18 -0
- package/lib/typescript/src/BetRouter/components/PlacedOpportunityModal.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/AutoFillView.d.ts +4 -0
- package/lib/typescript/src/BetRouter/components/admin/AutoFillView.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/ConfigManager.d.ts +4 -0
- package/lib/typescript/src/BetRouter/components/admin/ConfigManager.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/JobManager.d.ts +4 -0
- package/lib/typescript/src/BetRouter/components/admin/JobManager.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueContests.d.ts +9 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueContests.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueInfo.d.ts +8 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueInfo.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueParticipants.d.ts +8 -0
- package/lib/typescript/src/BetRouter/components/admin/LeagueParticipants.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/index.d.ts +16 -0
- package/lib/typescript/src/BetRouter/index.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/layouts/DesktopAdminLayout.d.ts +15 -0
- package/lib/typescript/src/BetRouter/layouts/DesktopAdminLayout.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/layouts/DesktopLayout.d.ts +44 -0
- package/lib/typescript/src/BetRouter/layouts/DesktopLayout.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/layouts/MobileAdminLayout.d.ts +15 -0
- package/lib/typescript/src/BetRouter/layouts/MobileAdminLayout.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/layouts/MobileLayout.d.ts +44 -0
- package/lib/typescript/src/BetRouter/layouts/MobileLayout.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/accounts.d.ts +19 -0
- package/lib/typescript/src/BetRouter/types/accounts.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/api-contracts.d.ts +1071 -0
- package/lib/typescript/src/BetRouter/types/api-contracts.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/config.d.ts +12 -0
- package/lib/typescript/src/BetRouter/types/config.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/contests.d.ts +34 -0
- package/lib/typescript/src/BetRouter/types/contests.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/credentials.d.ts +24 -0
- package/lib/typescript/src/BetRouter/types/credentials.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/index.d.ts +14 -0
- package/lib/typescript/src/BetRouter/types/index.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/jobs.d.ts +35 -0
- package/lib/typescript/src/BetRouter/types/jobs.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/leagues.d.ts +26 -0
- package/lib/typescript/src/BetRouter/types/leagues.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/liquidity.d.ts +14 -0
- package/lib/typescript/src/BetRouter/types/liquidity.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/markets.d.ts +87 -0
- package/lib/typescript/src/BetRouter/types/markets.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/opportunities.d.ts +88 -0
- package/lib/typescript/src/BetRouter/types/opportunities.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/orders.d.ts +34 -0
- package/lib/typescript/src/BetRouter/types/orders.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/participants.d.ts +33 -0
- package/lib/typescript/src/BetRouter/types/participants.d.ts.map +1 -0
- package/lib/typescript/src/BetRouter/types/partners.d.ts +11 -0
- package/lib/typescript/src/BetRouter/types/partners.d.ts.map +1 -0
- package/lib/typescript/src/Charts/adapters/TradeChartAdapter.d.ts +117 -0
- package/lib/typescript/src/Charts/adapters/TradeChartAdapter.d.ts.map +1 -0
- package/lib/typescript/src/Charts/components/BaseLineChart.d.ts +40 -0
- package/lib/typescript/src/Charts/components/BaseLineChart.d.ts.map +1 -0
- package/lib/typescript/src/Charts/components/LivePriceChart.d.ts +13 -0
- package/lib/typescript/src/Charts/components/LivePriceChart.d.ts.map +1 -0
- package/lib/typescript/src/Charts/index.d.ts +28 -0
- package/lib/typescript/src/Charts/index.d.ts.map +1 -0
- package/lib/typescript/src/Charts/themes/chartTheme.d.ts +78 -0
- package/lib/typescript/src/Charts/themes/chartTheme.d.ts.map +1 -0
- package/lib/typescript/src/Charts/types.d.ts +155 -0
- package/lib/typescript/src/Charts/types.d.ts.map +1 -0
- package/lib/typescript/src/Charts/utils/formatters.d.ts +66 -0
- package/lib/typescript/src/Charts/utils/formatters.d.ts.map +1 -0
- package/lib/typescript/src/Components/Dropdown.d.ts.map +1 -1
- package/lib/typescript/src/Components/Icons.d.ts +1 -0
- package/lib/typescript/src/Components/Icons.d.ts.map +1 -1
- package/lib/typescript/src/Components/index.d.ts +1 -0
- package/lib/typescript/src/Components/index.d.ts.map +1 -1
- package/lib/typescript/src/LocationTracker/LocationStatus.d.ts +2 -1
- package/lib/typescript/src/LocationTracker/LocationStatus.d.ts.map +1 -1
- package/lib/typescript/src/LocationTracker/api/index.d.ts +3 -1
- package/lib/typescript/src/LocationTracker/api/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +4 -2
- package/src/ApiOverrides/index.ts +4 -0
- package/src/BetRouter/api/index.ts +854 -0
- package/src/BetRouter/api/types.ts +0 -0
- package/src/BetRouter/components/AccountManager.tsx +533 -0
- package/src/BetRouter/components/AdminPortal.tsx +44 -0
- package/src/BetRouter/components/BuyOpportunities.tsx +491 -0
- package/src/BetRouter/components/BuyOpportunityCard.tsx +331 -0
- package/src/BetRouter/components/ContestLiquidity.tsx +613 -0
- package/src/BetRouter/components/ContestSelector.tsx +179 -0
- package/src/BetRouter/components/MyOpportunities.tsx +279 -0
- package/src/BetRouter/components/MyOpportunities.tsx.bak +440 -0
- package/src/BetRouter/components/OpportunityDetailModal.tsx +360 -0
- package/src/BetRouter/components/OpportunityHistory.tsx +408 -0
- package/src/BetRouter/components/PartnerCredentials.tsx +212 -0
- package/src/BetRouter/components/PlacedOpportunityModal.tsx +192 -0
- package/src/BetRouter/components/admin/AutoFillView.tsx +275 -0
- package/src/BetRouter/components/admin/ConfigManager.tsx +596 -0
- package/src/BetRouter/components/admin/JobManager.tsx +758 -0
- package/src/BetRouter/components/admin/LeagueContests.tsx +2443 -0
- package/src/BetRouter/components/admin/LeagueInfo.tsx +253 -0
- package/src/BetRouter/components/admin/LeagueParticipants.tsx +662 -0
- package/src/BetRouter/index.tsx +453 -0
- package/src/BetRouter/layouts/DesktopAdminLayout.tsx +348 -0
- package/src/BetRouter/layouts/DesktopLayout.tsx +292 -0
- package/src/BetRouter/layouts/MobileAdminLayout.tsx +387 -0
- package/src/BetRouter/layouts/MobileLayout.tsx +325 -0
- package/src/BetRouter/types/ADMIN_PORTAL.md +863 -0
- package/src/BetRouter/types/ADMIN_PORTAL_SIMPLIFIED.md +1881 -0
- package/src/BetRouter/types/CREDENTIALS_EXAMPLE.md +350 -0
- package/src/BetRouter/types/LIQUIDITY_CLIENT_GUIDE.md +399 -0
- package/src/BetRouter/types/MARKET_LINKING_WORKFLOW.md +682 -0
- package/src/BetRouter/types/MARKET_LINKING_WORKFLOW_V2.md +627 -0
- package/src/BetRouter/types/README.md +249 -0
- package/src/BetRouter/types/accounts.ts +21 -0
- package/src/BetRouter/types/api-contracts.ts +1164 -0
- package/src/BetRouter/types/config.ts +12 -0
- package/src/BetRouter/types/contests.ts +37 -0
- package/src/BetRouter/types/credentials.ts +99 -0
- package/src/BetRouter/types/index.ts +16 -0
- package/src/BetRouter/types/jobs.ts +37 -0
- package/src/BetRouter/types/leagues.ts +29 -0
- package/src/BetRouter/types/liquidity.ts +15 -0
- package/src/BetRouter/types/markets.ts +94 -0
- package/src/BetRouter/types/opportunities.ts +107 -0
- package/src/BetRouter/types/orders.ts +51 -0
- package/src/BetRouter/types/participants.ts +34 -0
- package/src/BetRouter/types/partners.ts +10 -0
- package/src/Charts/README.md +310 -0
- package/src/Charts/adapters/TradeChartAdapter.ts +471 -0
- package/src/Charts/components/BaseLineChart.tsx +293 -0
- package/src/Charts/components/LivePriceChart.tsx +521 -0
- package/src/Charts/index.tsx +62 -0
- package/src/Charts/themes/chartTheme.ts +113 -0
- package/src/Charts/types.ts +160 -0
- package/src/Charts/utils/formatters.ts +182 -0
- package/src/Components/Dropdown.tsx +6 -3
- package/src/Components/Icons.tsx +12 -0
- package/src/Components/index.tsx +4 -0
- package/src/LocationTracker/LocationStatus.tsx +4 -3
- package/src/LocationTracker/api/index.tsx +2 -2
- package/src/index.tsx +6 -0
- package/src/types.d.ts +410 -2
|
@@ -0,0 +1,627 @@
|
|
|
1
|
+
# Market Linking Workflow - Complete Guide
|
|
2
|
+
|
|
3
|
+
This guide explains the **complete workflow** for linking markets in the admin portal, including all the decision points and simplified flows.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 🎯 Core Concepts
|
|
8
|
+
|
|
9
|
+
### Markets Flow: Contest → Router Market → Partner Markets
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Router Contest (Lakers vs Celtics)
|
|
13
|
+
↓
|
|
14
|
+
Router Market (Spread)
|
|
15
|
+
↓
|
|
16
|
+
Partner Markets (BettorEdge Spread, Kalshi Spread, etc.)
|
|
17
|
+
↓
|
|
18
|
+
Variables (-7, -3.5, -10, etc.)
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 📋 Complete Workflow Decision Tree
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
1. Is this market supported for the contest?
|
|
27
|
+
NO → Add to supported markets first
|
|
28
|
+
YES → Continue
|
|
29
|
+
|
|
30
|
+
2. Does this partner have ANY raw markets linked for this market type?
|
|
31
|
+
NO → [Link Market - Full Flow]
|
|
32
|
+
YES → Continue
|
|
33
|
+
|
|
34
|
+
3. Does this market require variables? (variable_required = true)
|
|
35
|
+
NO → Done (market already linked)
|
|
36
|
+
YES → Continue
|
|
37
|
+
|
|
38
|
+
4. Do you want to add a new variable?
|
|
39
|
+
NO → Done
|
|
40
|
+
YES → [Add Variable - Simplified Flow]
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 🔧 Flow 1: Link Market (Full Flow)
|
|
46
|
+
|
|
47
|
+
**When to use:** First time linking a market type for a partner
|
|
48
|
+
|
|
49
|
+
### Important: Check Partner Requirements First
|
|
50
|
+
|
|
51
|
+
Before showing the linking UI, check if the partner requires a `price_key`:
|
|
52
|
+
|
|
53
|
+
```javascript
|
|
54
|
+
// Get partner info from GET /partners
|
|
55
|
+
const partner = partners.find(p => p.partner_id === selectedPartnerId);
|
|
56
|
+
|
|
57
|
+
// Check if price_key is required
|
|
58
|
+
if (partner.options?.price_key_required) {
|
|
59
|
+
// Show dropdown with options: partner.options.price_key_options
|
|
60
|
+
// Example: ["yes", "no"] for Kalshi
|
|
61
|
+
showPriceKeyDropdown = true;
|
|
62
|
+
priceKeyOptions = partner.options.price_key_options;
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Partner Requirements:**
|
|
67
|
+
- **BettorEdge**: No price_key required
|
|
68
|
+
- **Kalshi**: price_key REQUIRED (options: "yes", "no")
|
|
69
|
+
- **BetOpenly**: No price_key required
|
|
70
|
+
|
|
71
|
+
### Step 1: Get Linking Data
|
|
72
|
+
|
|
73
|
+
**Endpoint:** `GET /markets/:router_contest_id/:router_market_id/linking-data/:partner_id`
|
|
74
|
+
|
|
75
|
+
**Example:**
|
|
76
|
+
```bash
|
|
77
|
+
GET /markets/contest-123/rm-spread/linking-data/bettoredge-id
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**Response:**
|
|
81
|
+
```json
|
|
82
|
+
{
|
|
83
|
+
"router_contest": {
|
|
84
|
+
"router_contest_id": "contest-123",
|
|
85
|
+
"contest_label": "Lakers vs Celtics"
|
|
86
|
+
},
|
|
87
|
+
"router_market": {
|
|
88
|
+
"router_market_id": "rm-spread",
|
|
89
|
+
"market_label": "Spread",
|
|
90
|
+
"variable_required": true,
|
|
91
|
+
"default_variable_type": "spread"
|
|
92
|
+
},
|
|
93
|
+
"raw_markets": [
|
|
94
|
+
{
|
|
95
|
+
"raw_market_id": "raw-be-spread-1",
|
|
96
|
+
"external_id": "2000003|1",
|
|
97
|
+
"pretty_title": "Spread"
|
|
98
|
+
}
|
|
99
|
+
],
|
|
100
|
+
"participants": [
|
|
101
|
+
{
|
|
102
|
+
"partner_participant_id": "pp-lakers-1",
|
|
103
|
+
"name": "Los Angeles Lakers",
|
|
104
|
+
"participant_type": "team"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"partner_participant_id": "pp-celtics-1",
|
|
108
|
+
"name": "Boston Celtics",
|
|
109
|
+
"participant_type": "team"
|
|
110
|
+
}
|
|
111
|
+
],
|
|
112
|
+
"sides": [
|
|
113
|
+
{
|
|
114
|
+
"market_side_id": "side-home",
|
|
115
|
+
"side_key": "home",
|
|
116
|
+
"side_type": "team"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"market_side_id": "side-away",
|
|
120
|
+
"side_key": "away",
|
|
121
|
+
"side_type": "team"
|
|
122
|
+
}
|
|
123
|
+
],
|
|
124
|
+
"timeframes": [
|
|
125
|
+
{
|
|
126
|
+
"timeframe_id": "tf-full-game",
|
|
127
|
+
"timeframe_label": "Full Game"
|
|
128
|
+
}
|
|
129
|
+
],
|
|
130
|
+
"variables": [] // Empty on first link
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Step 2: User Input
|
|
135
|
+
|
|
136
|
+
**For Spread Market:**
|
|
137
|
+
```
|
|
138
|
+
┌─────────────────────────────────────────────┐
|
|
139
|
+
│ Link Spread Market - BettorEdge │
|
|
140
|
+
├─────────────────────────────────────────────┤
|
|
141
|
+
│ │
|
|
142
|
+
│ Raw Market: [Spread (2000003|1) ▼] │
|
|
143
|
+
│ │
|
|
144
|
+
│ Variable: [7] ← User enters (home/under) │
|
|
145
|
+
│ │
|
|
146
|
+
│ Home Side: │
|
|
147
|
+
│ Participant: [Lakers ▼] │
|
|
148
|
+
│ Timeframe: [Full Game ▼] │
|
|
149
|
+
│ Price Key: [LAL] (optional) │
|
|
150
|
+
│ │
|
|
151
|
+
│ Away Side: │
|
|
152
|
+
│ Participant: [Celtics ▼] │
|
|
153
|
+
│ Timeframe: [Full Game ▼] │
|
|
154
|
+
│ Price Key: [BOS] (optional) │
|
|
155
|
+
│ │
|
|
156
|
+
│ [Link Both Sides] │
|
|
157
|
+
└─────────────────────────────────────────────┘
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Step 3: Client Processing
|
|
161
|
+
|
|
162
|
+
**Client automatically:**
|
|
163
|
+
1. Takes user input: `7`
|
|
164
|
+
2. Creates home side: variable = `+7` (positive)
|
|
165
|
+
3. Creates away side: variable = `-7` (negative)
|
|
166
|
+
4. Makes 2 API calls to link both sides
|
|
167
|
+
|
|
168
|
+
### Step 4: API Calls
|
|
169
|
+
|
|
170
|
+
**Call 1 - Home Side:**
|
|
171
|
+
```json
|
|
172
|
+
POST /markets/link
|
|
173
|
+
{
|
|
174
|
+
"raw_market_id": "raw-be-spread-1",
|
|
175
|
+
"router_market_id": "rm-spread",
|
|
176
|
+
"market_side_id": "side-home",
|
|
177
|
+
"partner_participant_id": "pp-lakers-1",
|
|
178
|
+
"timeframe_id": "tf-full-game",
|
|
179
|
+
"variable": 7,
|
|
180
|
+
"variable_type": "spread",
|
|
181
|
+
"price_key": "LAL"
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
**Call 2 - Away Side:**
|
|
186
|
+
```json
|
|
187
|
+
POST /markets/link
|
|
188
|
+
{
|
|
189
|
+
"raw_market_id": "raw-be-spread-1",
|
|
190
|
+
"router_market_id": "rm-spread",
|
|
191
|
+
"market_side_id": "side-away",
|
|
192
|
+
"partner_participant_id": "pp-celtics-1",
|
|
193
|
+
"timeframe_id": "tf-full-game",
|
|
194
|
+
"variable": -7,
|
|
195
|
+
"variable_type": "spread",
|
|
196
|
+
"price_key": "BOS"
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## 🚀 Flow 2: Add Variable (Simplified Flow)
|
|
203
|
+
|
|
204
|
+
**When to use:** Market is already linked, you just want to add another variable (e.g., add -10 when -7 already exists)
|
|
205
|
+
|
|
206
|
+
> **🚨 CRITICAL REQUIREMENT:**
|
|
207
|
+
>
|
|
208
|
+
> The "Add Variable" modal MUST include:
|
|
209
|
+
> 1. ✅ Variable number input field
|
|
210
|
+
> 2. ✅ **Raw market dropdown selector** (ALWAYS visible, not conditional)
|
|
211
|
+
>
|
|
212
|
+
> The raw market dropdown:
|
|
213
|
+
> - Shows ALL raw markets from the API response
|
|
214
|
+
> - Defaults to the raw market currently used by existing variables
|
|
215
|
+
> - Allows user to select any raw market
|
|
216
|
+
> - Selected raw_market_id MUST be included in the API request
|
|
217
|
+
|
|
218
|
+
### Step 1: View Existing Variables
|
|
219
|
+
|
|
220
|
+
**Endpoint:** `GET /markets/:router_contest_id/:router_market_id/variables-and-raw/:partner_id`
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
GET /markets/contest-123/rm-spread/variables-and-raw/bettoredge-id
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
**Response:**
|
|
227
|
+
```json
|
|
228
|
+
{
|
|
229
|
+
"router_market": {
|
|
230
|
+
"router_market_id": "rm-spread",
|
|
231
|
+
"market_label": "Spread",
|
|
232
|
+
"variable_required": true,
|
|
233
|
+
"default_variable_type": "spread"
|
|
234
|
+
},
|
|
235
|
+
"existing_variables": [
|
|
236
|
+
{
|
|
237
|
+
"router_market_variable_id": "var-1",
|
|
238
|
+
"variable": -7,
|
|
239
|
+
"linked_count": 2
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"router_market_variable_id": "var-2",
|
|
243
|
+
"variable": 7,
|
|
244
|
+
"linked_count": 2
|
|
245
|
+
}
|
|
246
|
+
],
|
|
247
|
+
"raw_markets": [
|
|
248
|
+
{
|
|
249
|
+
"raw_market_id": "raw-be-spread-1",
|
|
250
|
+
"external_id": "2000003|1",
|
|
251
|
+
"pretty_title": "Spread"
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
"raw_market_id": "raw-be-spread-2",
|
|
255
|
+
"external_id": "2000003|2",
|
|
256
|
+
"pretty_title": "Alternate Spread"
|
|
257
|
+
}
|
|
258
|
+
]
|
|
259
|
+
}
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### Step 2: User Input (REQUIRED UI ELEMENTS)
|
|
263
|
+
|
|
264
|
+
**CRITICAL: The client MUST display ALL available raw markets in a dropdown/selector.**
|
|
265
|
+
|
|
266
|
+
```
|
|
267
|
+
┌─────────────────────────────────────────────┐
|
|
268
|
+
│ Add Variable to Spread │
|
|
269
|
+
├─────────────────────────────────────────────┤
|
|
270
|
+
│ │
|
|
271
|
+
│ Existing Variables: │
|
|
272
|
+
│ • -7 / +7 ✓ │
|
|
273
|
+
│ │
|
|
274
|
+
│ New Variable: [10] ← Enter number only │
|
|
275
|
+
│ │
|
|
276
|
+
│ Raw Market: [Dropdown ▼] │
|
|
277
|
+
│ • Spread (2000003|1) ← selected │
|
|
278
|
+
│ • Alternate Spread (2000003|2) │
|
|
279
|
+
│ • Spread -3 (2000003|3) │
|
|
280
|
+
│ │
|
|
281
|
+
│ Note: Default selection is the raw market │
|
|
282
|
+
│ currently used by existing variables. │
|
|
283
|
+
│ │
|
|
284
|
+
│ [Add Variable] │
|
|
285
|
+
└─────────────────────────────────────────────┘
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
**Requirements:**
|
|
289
|
+
- ✅ MUST show dropdown with ALL raw markets from API response
|
|
290
|
+
- ✅ MUST default to the raw_market_id currently used by existing variables
|
|
291
|
+
- ✅ MUST allow user to select any raw market from the list
|
|
292
|
+
- ✅ MUST send selected raw_market_id in API request
|
|
293
|
+
|
|
294
|
+
### Step 3: Client Processing
|
|
295
|
+
|
|
296
|
+
**ALWAYS include the selected `raw_market_id` in the request.**
|
|
297
|
+
|
|
298
|
+
```json
|
|
299
|
+
POST /markets/add-variable
|
|
300
|
+
{
|
|
301
|
+
"router_contest_id": "contest-123",
|
|
302
|
+
"router_market_id": "rm-spread",
|
|
303
|
+
"partner_id": "bettoredge-id",
|
|
304
|
+
"variable": 10,
|
|
305
|
+
"raw_market_id": "raw-be-spread-1" // ← ALWAYS include the selected raw_market_id
|
|
306
|
+
}
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
**How to determine which raw_market_id to use as default:**
|
|
310
|
+
1. Get existing variables from the API response
|
|
311
|
+
2. Look up the first existing variable's partner markets
|
|
312
|
+
3. Get the `raw_market_id` from one of those partner markets
|
|
313
|
+
4. Use that as the default selection in the dropdown
|
|
314
|
+
5. User can change to any other raw market in the list
|
|
315
|
+
|
|
316
|
+
**What happens on backend:**
|
|
317
|
+
- Backend finds existing partner_markets as template for side structure
|
|
318
|
+
- Creates new partner_markets with variable `+10` for home, `-10` for away
|
|
319
|
+
- Uses the SPECIFIED `raw_market_id` (can be same as existing or different)
|
|
320
|
+
- Copies participants, timeframes, price_keys from template
|
|
321
|
+
- Returns created partner markets
|
|
322
|
+
|
|
323
|
+
**Why always include raw_market_id:**
|
|
324
|
+
- Simpler client logic (no conditional)
|
|
325
|
+
- Explicit and clear what raw market is being used
|
|
326
|
+
- Works for all cases (same raw market OR different raw market)
|
|
327
|
+
- Backend handles both the same way
|
|
328
|
+
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
## 📊 Comparison: Full vs Simplified
|
|
332
|
+
|
|
333
|
+
| Aspect | Full Flow | Simplified Flow |
|
|
334
|
+
|--------|-----------|-----------------|
|
|
335
|
+
| **When** | First link | Adding variables |
|
|
336
|
+
| **User enters** | Variable, participants, timeframes, raw market, price keys | Variable number + raw market selection |
|
|
337
|
+
| **Endpoint** | `POST /markets/link` (2 calls) | `POST /markets/add-variable` (1 call) |
|
|
338
|
+
| **Client work** | Build 2 complete requests | Simple form with 2 fields |
|
|
339
|
+
| **Backend work** | Create from scratch | Clone from template |
|
|
340
|
+
| **Raw Market** | User manually selects | MUST show dropdown, defaults to existing |
|
|
341
|
+
|
|
342
|
+
---
|
|
343
|
+
|
|
344
|
+
## 🎨 UI State Management
|
|
345
|
+
|
|
346
|
+
### Market Card Display
|
|
347
|
+
|
|
348
|
+
```typescript
|
|
349
|
+
interface MarketState {
|
|
350
|
+
router_market: RouterMarketProps;
|
|
351
|
+
has_linked_raw_markets: boolean;
|
|
352
|
+
existing_variables: Array<{ variable: number; linked_count: number }>;
|
|
353
|
+
raw_markets: RawMarketProps[];
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
function renderMarketCard(market: MarketState) {
|
|
357
|
+
if (!market.has_linked_raw_markets) {
|
|
358
|
+
return <Button>Link Market</Button>; // Full flow
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
if (market.router_market.variable_required) {
|
|
362
|
+
return (
|
|
363
|
+
<>
|
|
364
|
+
<ExistingVariablesList variables={market.existing_variables} />
|
|
365
|
+
<Button>+ Add Variable</Button> // Simplified flow
|
|
366
|
+
</>
|
|
367
|
+
);
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
return <CheckMark />; // No variables needed, done
|
|
371
|
+
}
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### Add Variable Modal (CORRECT IMPLEMENTATION)
|
|
375
|
+
|
|
376
|
+
```typescript
|
|
377
|
+
interface AddVariableModalProps {
|
|
378
|
+
router_contest_id: string;
|
|
379
|
+
router_market_id: string;
|
|
380
|
+
partner_id: string;
|
|
381
|
+
existing_variables: Array<{ variable: number }>;
|
|
382
|
+
raw_markets: Array<{ raw_market_id: string; pretty_title: string; external_id: string }>;
|
|
383
|
+
onSuccess: () => void;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
function AddVariableModal({
|
|
387
|
+
router_contest_id,
|
|
388
|
+
router_market_id,
|
|
389
|
+
partner_id,
|
|
390
|
+
existing_variables,
|
|
391
|
+
raw_markets,
|
|
392
|
+
onSuccess
|
|
393
|
+
}: AddVariableModalProps) {
|
|
394
|
+
// Find the default raw market (the one currently used by existing variables)
|
|
395
|
+
const getDefaultRawMarketId = () => {
|
|
396
|
+
// In practice, you would look this up from existing partner markets
|
|
397
|
+
// For now, default to the first raw market in the list
|
|
398
|
+
return raw_markets[0]?.raw_market_id || '';
|
|
399
|
+
};
|
|
400
|
+
|
|
401
|
+
const [variable, setVariable] = useState('');
|
|
402
|
+
const [selectedRawMarket, setSelectedRawMarket] = useState(getDefaultRawMarketId());
|
|
403
|
+
|
|
404
|
+
const handleSubmit = async () => {
|
|
405
|
+
// ALWAYS include raw_market_id - this is CRITICAL
|
|
406
|
+
const payload = {
|
|
407
|
+
router_contest_id,
|
|
408
|
+
router_market_id,
|
|
409
|
+
partner_id,
|
|
410
|
+
variable: Number(variable),
|
|
411
|
+
raw_market_id: selectedRawMarket // ← ALWAYS include this
|
|
412
|
+
};
|
|
413
|
+
|
|
414
|
+
const response = await fetch('/markets/add-variable', {
|
|
415
|
+
method: 'POST',
|
|
416
|
+
headers: { 'Content-Type': 'application/json' },
|
|
417
|
+
body: JSON.stringify(payload)
|
|
418
|
+
});
|
|
419
|
+
|
|
420
|
+
if (response.ok) {
|
|
421
|
+
onSuccess();
|
|
422
|
+
}
|
|
423
|
+
};
|
|
424
|
+
|
|
425
|
+
return (
|
|
426
|
+
<Modal>
|
|
427
|
+
<h2>Add Variable</h2>
|
|
428
|
+
|
|
429
|
+
{/* Show existing variables for reference */}
|
|
430
|
+
<div>
|
|
431
|
+
<label>Existing Variables:</label>
|
|
432
|
+
<p>{existing_variables.map(v => v.variable).join(', ')}</p>
|
|
433
|
+
</div>
|
|
434
|
+
|
|
435
|
+
{/* Variable input - REQUIRED */}
|
|
436
|
+
<Input
|
|
437
|
+
label="New Variable"
|
|
438
|
+
type="number"
|
|
439
|
+
step="0.5"
|
|
440
|
+
value={variable}
|
|
441
|
+
onChange={setVariable}
|
|
442
|
+
placeholder="Enter number (e.g., 7, 10, 3.5)"
|
|
443
|
+
required
|
|
444
|
+
/>
|
|
445
|
+
|
|
446
|
+
{/* Raw Market Selector - ALWAYS VISIBLE AND REQUIRED */}
|
|
447
|
+
<Select
|
|
448
|
+
label="Raw Market"
|
|
449
|
+
value={selectedRawMarket}
|
|
450
|
+
onChange={setSelectedRawMarket}
|
|
451
|
+
required
|
|
452
|
+
>
|
|
453
|
+
{raw_markets.map(rm => (
|
|
454
|
+
<option key={rm.raw_market_id} value={rm.raw_market_id}>
|
|
455
|
+
{rm.pretty_title} ({rm.external_id})
|
|
456
|
+
</option>
|
|
457
|
+
))}
|
|
458
|
+
</Select>
|
|
459
|
+
|
|
460
|
+
<p className="help-text">
|
|
461
|
+
Select which raw market to attach this variable to.
|
|
462
|
+
The first option is the one currently used by existing variables.
|
|
463
|
+
</p>
|
|
464
|
+
|
|
465
|
+
<Button onClick={handleSubmit} disabled={!variable || !selectedRawMarket}>
|
|
466
|
+
Add Variable
|
|
467
|
+
</Button>
|
|
468
|
+
</Modal>
|
|
469
|
+
);
|
|
470
|
+
}
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
**Key Points:**
|
|
474
|
+
- ✅ Raw market dropdown is ALWAYS visible (not conditional)
|
|
475
|
+
- ✅ raw_market_id is ALWAYS included in the request
|
|
476
|
+
- ✅ First raw market is pre-selected by default
|
|
477
|
+
- ✅ User can select any raw market from the list
|
|
478
|
+
- ✅ No confusing radio buttons or conditional logic
|
|
479
|
+
|
|
480
|
+
---
|
|
481
|
+
|
|
482
|
+
## 🔑 Key Rules
|
|
483
|
+
|
|
484
|
+
### Variable Entry (Client Logic)
|
|
485
|
+
|
|
486
|
+
**For Spreads:**
|
|
487
|
+
- User enters: `7`
|
|
488
|
+
- Home side gets: `+7` (positive)
|
|
489
|
+
- Away side gets: `-7` (negative)
|
|
490
|
+
|
|
491
|
+
**For Totals:**
|
|
492
|
+
- User enters: `220.5`
|
|
493
|
+
- Over side gets: `220.5`
|
|
494
|
+
- Under side gets: `220.5`
|
|
495
|
+
|
|
496
|
+
### Backend Handles
|
|
497
|
+
|
|
498
|
+
✅ Creating signed variables (`+7` and `-7`)
|
|
499
|
+
✅ Looking up router_market_variable (or creating if needed)
|
|
500
|
+
✅ Cloning side structure from template
|
|
501
|
+
✅ Detecting duplicates (won't create if already exists)
|
|
502
|
+
|
|
503
|
+
### Client Handles
|
|
504
|
+
|
|
505
|
+
✅ Determining when to show "Link Market" vs "+ Add Variable"
|
|
506
|
+
✅ Flipping the sign for away sides (home = positive, away = negative for spreads)
|
|
507
|
+
✅ **ALWAYS displaying raw market dropdown** in Add Variable modal
|
|
508
|
+
✅ Selecting default raw market (the one currently used)
|
|
509
|
+
✅ **ALWAYS including raw_market_id** in the add-variable request
|
|
510
|
+
✅ Making 2 calls for full flow, 1 call for simplified flow
|
|
511
|
+
|
|
512
|
+
---
|
|
513
|
+
|
|
514
|
+
## 🧪 Testing Checklist
|
|
515
|
+
|
|
516
|
+
- [ ] Link first variable to Spread market (full flow)
|
|
517
|
+
- [ ] Add second variable to same raw market (simplified, existing)
|
|
518
|
+
- [ ] Add third variable to different raw market (simplified, new)
|
|
519
|
+
- [ ] Link Total market (verify both sides use same variable)
|
|
520
|
+
- [ ] Link Moneyline market (no variables required)
|
|
521
|
+
- [ ] Verify duplicate detection works (try adding same variable twice)
|
|
522
|
+
|
|
523
|
+
---
|
|
524
|
+
|
|
525
|
+
## 🚨 Error Handling
|
|
526
|
+
|
|
527
|
+
### Common Errors
|
|
528
|
+
|
|
529
|
+
**"No existing partner markets found to use as template"**
|
|
530
|
+
- Cause: Trying to use simplified flow before doing full flow
|
|
531
|
+
- Solution: Use "Link Market" button first to create initial link
|
|
532
|
+
|
|
533
|
+
**"Market not found"**
|
|
534
|
+
- Cause: Invalid router_market_id or router_contest_id
|
|
535
|
+
- Solution: Verify contest has market in supported markets
|
|
536
|
+
|
|
537
|
+
**"Partner not linked to contest"**
|
|
538
|
+
- Cause: Partner contest doesn't exist
|
|
539
|
+
- Solution: Link the contest to the partner first
|
|
540
|
+
|
|
541
|
+
---
|
|
542
|
+
|
|
543
|
+
## 📝 Summary
|
|
544
|
+
|
|
545
|
+
### Initial Setup (Per Partner, Per Market Type)
|
|
546
|
+
1. Use **Full Flow** (`POST /markets/link` × 2)
|
|
547
|
+
2. Requires all details: participants, timeframes, raw market, etc.
|
|
548
|
+
|
|
549
|
+
### Adding More Variables
|
|
550
|
+
1. Use **Simplified Flow** (`POST /markets/add-variable`)
|
|
551
|
+
2. **Enter the variable number** (e.g., 7, 10, 3.5)
|
|
552
|
+
3. **Select raw market from dropdown** (ALWAYS show dropdown, defaults to current)
|
|
553
|
+
4. **ALWAYS include raw_market_id** in the request
|
|
554
|
+
5. System clones everything else from template (participants, timeframes, price_keys)
|
|
555
|
+
|
|
556
|
+
**Critical Requirements for Add Variable:**
|
|
557
|
+
- ✅ MUST show raw market dropdown (not conditional, always visible)
|
|
558
|
+
- ✅ MUST send raw_market_id in request (always include it)
|
|
559
|
+
- ✅ Default to the raw market currently used by existing variables
|
|
560
|
+
- ✅ Allow user to select any raw market from the list
|
|
561
|
+
|
|
562
|
+
This approach gives you **maximum flexibility** (can attach to any raw market) while keeping the interface **super simple** (only 2 form fields: variable + raw market).
|
|
563
|
+
|
|
564
|
+
---
|
|
565
|
+
|
|
566
|
+
## 🔧 Partner-Specific Considerations
|
|
567
|
+
|
|
568
|
+
### Kalshi Variable Handling
|
|
569
|
+
|
|
570
|
+
**Important:** Kalshi markets include a `floor_strike` property that represents the variable value, but it requires conversion for spread markets.
|
|
571
|
+
|
|
572
|
+
**Kalshi's Perspective:**
|
|
573
|
+
- Kalshi phrases markets from the **favorite's perspective** (positive numbers)
|
|
574
|
+
- Example: "Baltimore will win by more than 7.5" → `floor_strike: 7.5`
|
|
575
|
+
|
|
576
|
+
**BetRouter's Perspective:**
|
|
577
|
+
- Spreads are stored from the **standard perspective** (negative for favorite, positive for underdog)
|
|
578
|
+
- Baltimore (favorite) → variable: `-7.5`
|
|
579
|
+
- Opponent (underdog) → variable: `+7.5`
|
|
580
|
+
|
|
581
|
+
**How Raw Markets Are Displayed:**
|
|
582
|
+
- Spread markets: `pretty_title` includes `(±7.5)` to indicate both sides
|
|
583
|
+
- Total markets: `pretty_title` includes `(220.5)` to show the line
|
|
584
|
+
- Example: "Baltimore will win by more than 7.5 (±7.5)"
|
|
585
|
+
|
|
586
|
+
**When Linking:**
|
|
587
|
+
1. Admin sees: "Baltimore will win by more than 7.5 (±7.5)"
|
|
588
|
+
2. For Baltimore (home/favorite) side: Enter `-7.5` as the variable
|
|
589
|
+
3. For Opponent (away/underdog) side: Enter `+7.5` as the variable
|
|
590
|
+
4. Both sides will use `price_key: "yes"` since the market is phrased from the favorite's perspective
|
|
591
|
+
|
|
592
|
+
**Example Linking Flow:**
|
|
593
|
+
|
|
594
|
+
```json
|
|
595
|
+
// Home Side (Baltimore - Favorite)
|
|
596
|
+
POST /markets/link
|
|
597
|
+
{
|
|
598
|
+
"raw_market_id": "raw-kalshi-spread-1",
|
|
599
|
+
"router_market_id": "rm-spread",
|
|
600
|
+
"market_side_id": "side-home",
|
|
601
|
+
"partner_participant_id": "pp-baltimore",
|
|
602
|
+
"timeframe_id": "tf-full-game",
|
|
603
|
+
"variable": -7.5,
|
|
604
|
+
"variable_type": "spread",
|
|
605
|
+
"price_key": "yes" // YES = Baltimore covers the spread
|
|
606
|
+
}
|
|
607
|
+
|
|
608
|
+
// Away Side (Opponent - Underdog)
|
|
609
|
+
POST /markets/link
|
|
610
|
+
{
|
|
611
|
+
"raw_market_id": "raw-kalshi-spread-1",
|
|
612
|
+
"router_market_id": "rm-spread",
|
|
613
|
+
"market_side_id": "side-away",
|
|
614
|
+
"partner_participant_id": "pp-opponent",
|
|
615
|
+
"timeframe_id": "tf-full-game",
|
|
616
|
+
"variable": 7.5,
|
|
617
|
+
"variable_type": "spread",
|
|
618
|
+
"price_key": "no" // NO = Baltimore doesn't cover (opponent covers)
|
|
619
|
+
}
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
**Key Rules for Kalshi Spreads:**
|
|
623
|
+
- ✅ Favorite side: negative variable, `price_key: "yes"`
|
|
624
|
+
- ✅ Underdog side: positive variable, `price_key: "no"`
|
|
625
|
+
- ✅ Both sides link to the SAME raw_market
|
|
626
|
+
- ✅ The `floor_strike` value is always positive in Kalshi's data, convert based on side
|
|
627
|
+
|