XML 66 R49.htm IDEA: XBRL DOCUMENT
v3.22.0.1

Debt - Credit Agreement (Details) - USD ($) |  | 12 Months Ended
--- | --- | ---
Aug. 21, 2018 | Dec. 31, 2021 | Dec. 31, 2020
Long-term Debt |  |  |
Long-term debt outstanding |  | $ 0 | $ 0
One-month LIBOR |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 1.50% | 1.75%
Three-month LIBOR |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 1.50% | 1.75%
ABL Credit Facility |  |  |
Long-term Debt |  |  |
Long-term debt outstanding |  | $ 0 | $ 0
Subsidiaries | ABL Credit Facility |  |  |
Long-term Debt |  |  |
Debt term | 5 years |  |
Maximum borrowing capacity | $ 75,000,000 |  |
Fixed charge coverage ratio |  | 1.0 |
Subsidiaries | ABL Credit Facility | Minimum |  |  |
Long-term Debt |  |  |
Commitment fee, percent |  | 0.25% |
Subsidiaries | ABL Credit Facility | Minimum | Alternate Base Rate |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 0.50% |
Subsidiaries | ABL Credit Facility | Minimum | Eurodollar |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 1.50% |
Subsidiaries | ABL Credit Facility | Maximum |  |  |
Long-term Debt |  |  |
Commitment fee, percent |  | 0.375% |
Subsidiaries | ABL Credit Facility | Maximum | Alternate Base Rate |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 1.00% |
Subsidiaries | ABL Credit Facility | Maximum | Eurodollar |  |  |
Long-term Debt |  |  |
Applicable margin rate |  | 2.00% |
Subsidiaries | Letters of credit |  |  |
Long-term Debt |  |  |
Maximum borrowing capacity | $ 15,000,000 |  |

X
- Definition Percentage points added to the reference rate to compute the variable rate on the debt instrument. + References No definition available. + Details
Name: | us-gaap_DebtInstrumentBasisSpreadOnVariableRate1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
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_DebtInstrumentLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_DebtInstrumentTerm
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used. + References No definition available. + Details
Name: | us-gaap_LineOfCreditFacilityCommitmentFeePercentage
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -URI http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 20 -Section 50 -Paragraph 4 -Subparagraph (b)(3) -URI http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870 Reference 2: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 20 -Section 55 -Paragraph 69C -URI http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(a)(16)) -URI http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910 Reference 4: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 20 -Section 55 -Paragraph 69B -URI http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612 Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(16)) -URI http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 20 -Section 50 -Paragraph 1D -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611 Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(22)) -URI http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_LongTermDebt
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The fixed charge coverage ratio to be maintained under the debt instrument agreement based on the ratio of EBITDA minus Unfinanced Capital Expenditures to Fixed Charges. + References No definition available. + Details
Name: | whd_DebtInstrumentFixedChargeCoverageRatio
Namespace Prefix: | whd_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_VariableRateAxis=whd_LondonInterbankOfferedRateOneMonthMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_VariableRateAxis=whd_LondonInterbankOfferedRateThreeMonthMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ConsolidatedEntitiesAxis=srt_SubsidiariesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_VariableRateAxis=us-gaap_BaseRateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |