v3.26.1
REVENUE RECOGNITION (Tables)
6 Months Ended
Jun. 30, 2026
REVENUE RECOGNITION  
Schedule of reconciliation of disaggregated revenue by target market and geography

Three months ended

Six months ended

June 30, 

June 30, 

Target Market

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

Industrial

$

76,458

$

65,455

$

144,036

$

127,881

Vehicle

24,958

26,721

49,589

49,694

Medical

 

21,834

 

20,045

 

41,305

 

39,147

Aerospace & Defense

 

24,231

 

20,961

 

44,706

 

41,997

Distribution and Other

 

6,289

 

6,396

 

13,049

 

13,662

Total

$

153,770

$

139,578

$

292,685

$

272,381

Three months ended

Six months ended

June 30, 

June 30, 

Geography

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

North America (primarily U.S.)

$

102,195

$

92,352

$

191,266

$

178,625

Europe

 

45,271

 

40,983

 

89,149

 

81,047

Asia-Pacific

 

6,304

 

6,243

 

12,270

 

12,709

Total

$

153,770

$

139,578

$

292,685

$

272,381

Schedule of opening and closing balances of the Company's contract assets and liabilities

  ​ ​ ​

June 30, 

December 31,

2026

2025

Contract assets in prepaid expenses and other assets

$

780

$

-

Contract liabilities in accrued liabilities

$

3,955

$

3,767