JSFiddle - React, Tailwind, and code Playground

JavaScript

//  This includes the delimiter match in the results, but I want the delimiter included WITH the value
//  after it, e.g.: ["(20)987111", ...]
str = "(20)987111(240)A(10)ABC123(17)2022-04-01(21)888888888888888";
console.log(str.split(/(\(\d{2,}\))/).filter(Boolean))

//  If I include a pattern that should (I think) match the content following the delimiter I will 
//  only get a single result that is the full string:
str = "(20)987111(240)A(10)ABC123(17)2022-04-01(21)888888888888888";
console.log(str.split(/(\(\d{2,}\)\W+)/).filter(Boolean))

//  I think this is because I'm effectively mathching the entire string, hence a single result.
//  So now I'll try to match only up to the start of the next "(":
str = "(20)987111(240)A(10)ABC123(17)2022-04-01(21)888888888888888";
console.log(str.split(/(\(\d{2,}\)(^\())/).filter(Boolean))

//  None of these are accomplishing what I need.