Revenue from Contracts with Customers - Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 27, 2020
Jun. 29, 2019
Jun. 27, 2020
Jun. 29, 2019
Disaggregation of Revenue [Line Items]        
Total revenues $ 119,023 $ 100,304 $ 220,705 $ 189,654
United States        
Disaggregation of Revenue [Line Items]        
Total revenues 108,198 85,837 196,248 161,622
Canada        
Disaggregation of Revenue [Line Items]        
Total revenues 2,868 3,317 6,989 6,732
Middle East        
Disaggregation of Revenue [Line Items]        
Total revenues 2,330 5,949 4,631 9,700
Caribbean        
Disaggregation of Revenue [Line Items]        
Total revenues 2,310 501 5,873 2,767
Europe        
Disaggregation of Revenue [Line Items]        
Total revenues 2,110 2,471 4,482 4,910
Other        
Disaggregation of Revenue [Line Items]        
Total revenues $ 1,207 $ 2,229 $ 2,482 $ 3,923