XML 69 R50.htm IDEA: XBRL DOCUMENT v3.22.0.1
Revenue Recognition - Revenue by Source (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Disaggregation of Revenue [Line Items]      
Product revenue $ 906,858 $ 731,224 $ 724,788
Total revenue 972,176 794,247 785,177
Product      
Disaggregation of Revenue [Line Items]      
Product revenue 663,512 518,633 557,336
Total revenue 663,512 518,633 557,336
Installation      
Disaggregation of Revenue [Line Items]      
Product revenue 96,059 101,887 60,826
Total revenue 96,059 101,887 60,826
Service      
Disaggregation of Revenue [Line Items]      
Product revenue 144,184 109,633 95,786
Total revenue 144,184 109,633 95,786
Electricity      
Disaggregation of Revenue [Line Items]      
Product revenue 3,103 1,071 10,840
Electricity revenue 65,318 63,023 60,389
Total revenue $ 68,421 $ 64,094 $ 71,229