v3.20.1

Stockholders' Equity - Warrants (Details) - $ / shares | 12 Months Ended
--- | ---
Dec. 31, 2019 | Dec. 31, 2018
Number of Warrants |  |
Number of warrants, granted, arosa loan agreement |  | 7,147,147
Weighted Average Exercise Price per Warrant |  |
Weighted average exercise price per warrant, granted, arosa loan agreement |  |
Warrant |  |
Number of Warrants |  |
Warrant or right, outstanding, number, beginning balance | 17,818,844 | 2,618,307
Number of warrants, granted, marathon debt (in shares) | 3,379,466 | 8,053,390
Number of warrants, exercised (in shares) | 0 | 0
Number of warrants, granted, series B preferred stock (in shares) | 9,262,500 |
Number of warrants, granted, other | 66,966 |
Warrant or right, outstanding, number, beginning balance | 30,527,776 | 17,818,844
Weighted Average Exercise Price per Warrant |  |
Weighted average exercise price per warrant outstanding, beginning balance (in usd per share) | $ 1.84 | $ 5.28
Weighted average exercise price per warrant, granted, marathon debt (in usd per share) |  |
Weighted average exercise price per warrant, exercised (in usd per share) |  |
Weighted average exercise price per warrant, granted, series B preferred stock (in usd per share) |  |
Weighted average exercise price per warrant outstanding, ending balance (in usd per share) | $ 1.82 | $ 1.84

X
- Definition A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period. + References No definition available. + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of Warrants, Granted, Arosa Loan Agreement + References No definition available. + Details
Name: | wkhs_NumberOfWarrantsGrantedArosaLoanAgreement
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of Warrants, Granted, Marathon debt. + References No definition available. + Details
Name: | wkhs_NumberOfWarrantsGrantedMarathonDebt
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of Warrants, Granted, Other + References No definition available. + Details
Name: | wkhs_NumberOfWarrantsGrantedOther
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of Warrants, Granted, Series B Preferred Stock. + References No definition available. + Details
Name: | wkhs_NumberOfWarrantsGrantedSeriesBPreferredStock
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Warrant or Right, Exercised, Number + References No definition available. + Details
Name: | wkhs_WarrantOrRightExercisedNumber
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Warrant or Right, Outstanding, Number + References No definition available. + Details
Name: | wkhs_WarrantOrRightOutstandingNumber
Namespace Prefix: | wkhs_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted Average Exercise Price Per Warrant + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantAbstract
Namespace Prefix: | wkhs_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted Average Exercise Price Per Warrant, Exercised + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantExercised
Namespace Prefix: | wkhs_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted Average Exercise Price per Warrant, Granted, Arosa Loan Agreement + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantGrantedArosaLoanAgreement
Namespace Prefix: | wkhs_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted Average Exercise Price per Warrant, Granted, Marathon debt. + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantGrantedMarathonDebt
Namespace Prefix: | wkhs_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted Average Exercise Price per Warrant, Granted, Series B Preferred Stock. + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantGrantedSeriesBPreferredStock
Namespace Prefix: | wkhs_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted Average Exercise Price per Warrant. + References No definition available. + Details
Name: | wkhs_WeightedAverageExercisePricePerWarrantOutstanding
Namespace Prefix: | wkhs_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |