XML 22 R36.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Revenue, Contract Assets and Liabilities and Other Contract Matters - Schedules of Concentration of Risk, by Risk Factor (Details) - USD ($) $ in Thousands | 3 Months Ended | 12 Months Ended
--- | --- | ---
Dec. 31, 2019 | Sep. 30, 2019 | Jun. 30, 2019 | Mar. 31, 2019 | Dec. 31, 2018 | Sep. 30, 2018 | Jun. 30, 2018 | Mar. 31, 2018 | Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2017
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue | $ 79,445 | $ 75,802 | $ 80,456 | $ 67,605 | $ 60,231 | $ 49,712 | $ 54,014 | $ 57,290 | $ 303,308 | $ 221,247 | $ 171,022
Sales Revenue, Net | Customer Concentration Risk | Customer A |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  | 52,310 |  |
Sales Revenue, Net | Customer Concentration Risk | Customer B |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  | 39,897 |  |
Sales Revenue, Net | Customer Concentration Risk | Customer C |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  | 36,175 | 49,123 | 21,781
Sales Revenue, Net | Customer Concentration Risk | Customer D |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  | $ 34,448 |  |
Sales Revenue, Net | Customer Concentration Risk | Customer E |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | 25,873 |
Sales Revenue, Net | Customer Concentration Risk | Customer F |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | $ 23,279 |
Sales Revenue, Net | Customer Concentration Risk | Customer G |  |  |  |  |  |  |  |  |  |  |
Revenue, Initial Application Period Cumulative Effect Transition [Line Items] |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  |  | $ 44,724

X
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerAMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerBMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerCMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerDMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerEMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerFMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=gifi_CustomerGMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |