@@ -34,6 +34,7 @@ import {
3434} from './pipeline/aicIncludedCredits'
3535import { PRODUCT_BUDGET_COPILOT , PRODUCT_BUDGET_COPILOT_CLOUD_AGENT , PRODUCT_BUDGET_SPARK } from './pipeline/productClassification'
3636import { runPipeline } from './pipeline/runPipeline'
37+ import type { ReportFormatMetadata } from './pipeline/reportAdapters'
3738import { runBudgetSimulation , type BudgetSimulationResult } from './utils/budgetSimulation'
3839import { EMPTY_BUDGET_VALUES , getDefaultBudgetValues , getUserSpendSegmentsByUsername , type BudgetField , type BudgetValues } from './utils/costManagementBudgets'
3940import { calculateIndividualPlanUpgradeRecommendation , getIndividualLicenseMonthlyCost } from './utils/individualPlanUpgrade'
@@ -49,6 +50,7 @@ const ENTERPRISE_LICENSE_MONTHLY_COST = 39
4950function App ( ) {
5051 const [ status , setStatus ] = useState < Status > ( 'idle' )
5152 const [ quickStats , setQuickStats ] = useState < QuickStatsResult | null > ( null )
53+ const [ reportMetadata , setReportMetadata ] = useState < ReportFormatMetadata | null > ( null )
5254 const [ reportContext , setReportContext ] = useState < ReportContextResult | null > ( null )
5355 const [ error , setError ] = useState < string | null > ( null )
5456 const [ fileName , setFileName ] = useState < string | null > ( null )
@@ -79,6 +81,7 @@ function App() {
7981
8082 const applyProcessedData = useCallback ( ( {
8183 quickStats,
84+ reportMetadata,
8285 reportContext,
8386 dailyUsageData,
8487 modelUsage,
@@ -88,6 +91,7 @@ function App() {
8891 userUsage,
8992 } : {
9093 quickStats : QuickStatsResult
94+ reportMetadata : ReportFormatMetadata
9195 reportContext : ReportContextResult
9296 dailyUsageData : DailyUsageData [ ]
9397 modelUsage : ModelUsageResult
@@ -97,6 +101,7 @@ function App() {
97101 userUsage : UserUsageResult
98102 } ) => {
99103 setQuickStats ( quickStats )
104+ setReportMetadata ( reportMetadata )
100105 setReportContext ( reportContext )
101106 setDailyUsageData ( dailyUsageData )
102107 setModelUsage ( modelUsage )
@@ -140,6 +145,7 @@ function App() {
140145 ...statsAggregator . result ( ) ,
141146 lineCount : pipelineResult . reportRowCount ,
142147 } ,
148+ reportMetadata : pipelineResult . reportMetadata ,
143149 reportContext : contextAggregator . result ( ) ,
144150 dailyUsageData : dailyAggregator . result ( ) . dailyData ,
145151 modelUsage : modelAggregator . result ( ) ,
@@ -168,6 +174,7 @@ function App() {
168174 setStatus ( status )
169175 setError ( null )
170176 setQuickStats ( null )
177+ setReportMetadata ( null )
171178 setReportContext ( null )
172179 setDailyUsageData ( [ ] )
173180 setUserUsage ( null )
@@ -476,7 +483,7 @@ function App() {
476483 }
477484 }
478485
479- const hasReport = status === 'done' && fileName !== null
486+ const hasReport = status === 'done' && fileName !== null && reportMetadata !== null
480487 const showSeatConfirmation = hasReport && seatConfirmationPending
481488 const rangeStart = reportContext ?. startDate ?? null
482489 const rangeEnd = reportContext ?. endDate ?? null
0 commit comments