File size: 638 Bytes
92c04c0
 
a832eac
92c04c0
 
 
a832eac
 
 
92c04c0
a832eac
 
 
 
 
 
92c04c0
 
 
 
a832eac
92c04c0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
export function validateReport(r) {
  if (!r) throw new Error("report_view missing");
  
  if (!r.marketTitle) {
    throw new Error("report_view.marketTitle missing");
  }
  
  if (!r.marketOverview) {
    throw new Error("report_view.marketOverview missing");
  }
  
  const mo = r.marketOverview;
  if (typeof mo.pastYear_2023 !== 'number') throw new Error("pastYear_2023 must be number");
  if (typeof mo.currentYear_2025 !== 'number') throw new Error("currentYear_2025 must be number");
  
  // Basic validation only
  if (!Array.isArray(r.marketSegments)) {
    throw new Error("report_view.marketSegments must be array");
  }
}