| 1 | const lorem1 = |
| 2 | `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut scelerisque elit ut ligula feugiat, at sagittis metus eleifend. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam aliquam, lorem volutpat sagittis efficitur, dui lectus rhoncus nunc, id porttitor sapien velit vel nunc. Praesent laoreet neque eu fringilla fermentum. Fusce eget nisl non libero porta sagittis. Duis diam neque, iaculis quis dignissim sit amet, iaculis eu ex. Aliquam suscipit nibh et arcu accumsan semper. Sed et nibh at sem pretium interdum. |
| 3 | |
| 4 | Phasellus nec dapibus diam. Duis feugiat fermentum erat, eu vulputate metus dapibus non. In aliquam venenatis accumsan. Pellentesque non libero dapibus, sagittis sem sed, lacinia augue. Cras vitae neque ac velit lobortis pulvinar. Suspendisse et risus eget urna rutrum ornare at at tortor. Praesent vulputate commodo dolor, ut mattis mauris tincidunt interdum. |
| 5 | |
| 6 | Praesent sapien leo, efficitur vitae porttitor at, iaculis et neque. Aliquam vel magna vitae odio imperdiet convallis sit amet a ante. Ut mollis lacus vel erat accumsan tempus. Ut ullamcorper neque vel quam egestas, nec rhoncus dolor vehicula. Donec ornare tempor leo sit amet consequat. Quisque dapibus leo sapien, ut fringilla mi scelerisque quis. Praesent id leo a arcu pulvinar ornare id vitae enim. Phasellus ut imperdiet nunc. Fusce sagittis sapien elit, sit amet tristique dui cursus eget. Integer nec dui felis. Aenean sodales ligula congue, convallis ex at, porta est. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce lacinia dolor vitae mi porta, et imperdiet erat suscipit. Phasellus dictum lorem nec eros volutpat interdum. Cras fermentum fringilla felis, in bibendum metus. Suspendisse vitae justo at odio tincidunt luctus. |
| 7 | |
| 8 | Curabitur vitae dignissim sem, nec viverra libero. Nunc rhoncus semper lacus, ac interdum nisl sagittis in. Sed eget volutpat nisi, id volutpat orci. Nulla ut urna elementum, tempus lectus sed, scelerisque elit. Phasellus viverra justo sed gravida rutrum. Sed fermentum sapien nibh, id tincidunt nisl porta in. Cras malesuada mauris eget quam aliquam, nec laoreet lacus aliquet. Fusce id felis quis lectus laoreet interdum non ac lacus. Aliquam lobortis vestibulum orci, id pharetra velit vulputate non. Sed hendrerit sem risus, nec finibus mi efficitur non. Vivamus eu dui at nisl lacinia molestie ac et odio. Cras quis tristique dui. Pellentesque maximus auctor erat. Suspendisse tincidunt, purus eu dictum ultrices, metus libero tristique ante, eu aliquam odio augue id nisi. |
| 9 | |
| 10 | Sed egestas nisl vitae metus consectetur aliquam. Aliquam erat volutpat. Nullam nunc turpis, pretium ut odio in, cursus scelerisque velit. Integer non odio sed nunc sodales suscipit non et lectus. Suspendisse aliquet nisl in justo feugiat, et blandit justo tincidunt. Proin id condimentum tortor. Curabitur scelerisque erat quis feugiat fringilla. Maecenas faucibus elit a neque tempor, vitae interdum odio feugiat. Donec ut malesuada nunc. Quisque at ultrices neque. Nunc odio ante, sagittis id nulla et, finibus cursus lectus. Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed tortor turpis, blandit sit amet erat a, fringilla suscipit ligula. Proin at ante eu nibh tristique tincidunt. Nam sagittis lectus ac erat dictum lacinia.` |
| 11 | .split(" "); |
| 12 | const lorem2 = |
| 13 | `Phasellus vitae erat ac diam lacinia feugiat vitae vitae dolor. Etiam neque metus, cursus ut feugiat eu, aliquam eu nisl. Curabitur rutrum, purus ac vulputate consectetur, lectus urna maximus tortor, vel blandit sapien mauris nec justo. Aenean eget blandit urna, et blandit risus. Sed convallis in nisl bibendum luctus. Fusce placerat ante eget nisl accumsan, nec tincidunt turpis hendrerit. Sed efficitur vulputate nisi quis auctor. Ut quis mauris magna. Cras nulla magna, vehicula a elementum ac, facilisis eu mi. Etiam malesuada justo eget eleifend sagittis. Nunc vulputate lorem ante, in luctus justo pellentesque cursus. Aliquam auctor urna ut vulputate blandit. Morbi eget pharetra risus. Phasellus accumsan, quam facilisis facilisis congue, augue enim vestibulum mauris, ut ultrices erat lacus id est. |
| 14 | |
| 15 | Sed at felis nec velit laoreet tincidunt. Integer gravida congue tellus ac consectetur. Etiam vitae nisi nec ante dapibus dictum a at nunc. Phasellus nec ligula non elit dignissim sagittis non ac justo. Praesent feugiat metus ligula. Nunc imperdiet, dolor iaculis vulputate auctor, orci odio tincidunt odio, a iaculis mi nisi vitae nibh. Nulla sit amet efficitur mi, a suscipit purus. Vestibulum suscipit diam at arcu tincidunt tempus. Donec finibus lectus laoreet condimentum pharetra. Nullam et libero ac orci aliquam luctus sed sed quam. |
| 16 | |
| 17 | Aliquam lacinia lacus ipsum. Aenean ornare semper lacus vel ullamcorper. Sed fringilla convallis dolor, at semper velit facilisis non. Morbi et ligula efficitur, condimentum turpis id, dignissim dolor. Donec suscipit pretium euismod. Duis tempor interdum ligula sit amet vehicula. Aenean iaculis, magna sed cursus faucibus, ipsum libero fringilla erat, eu tincidunt nibh nisl non libero. Nulla facilisi. In a quam ut neque euismod scelerisque eu a diam. Aenean lobortis consequat felis. Praesent et consequat nunc. |
| 18 | |
| 19 | Fusce at enim tempus, facilisis justo eget, laoreet elit. Proin sit amet ultrices sem. Suspendisse porta vitae lectus sed vehicula. Quisque tempor eros non sem malesuada hendrerit. Nullam eget neque in lacus consectetur feugiat non sed erat. Cras cursus aliquam felis, non maximus velit auctor in. Donec velit nisi, imperdiet a odio eget, consectetur vehicula elit. |
| 20 | |
| 21 | Maecenas fringilla maximus felis. Donec consequat sapien vitae consequat tempor. Suspendisse suscipit, magna nec feugiat gravida, neque arcu pretium lorem, ac interdum magna ligula et massa. Vivamus lobortis turpis ipsum, sed imperdiet lectus finibus vel. Maecenas non quam erat. Nunc vulputate libero ut justo fringilla, ut fringilla nisl facilisis. Aliquam id ligula sit amet nunc maximus condimentum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Phasellus rhoncus molestie efficitur. Suspendisse est felis, dapibus at lacinia a, vestibulum sit amet turpis.` |
| 22 | .split(" "); |
| 23 | |
| 24 | log.startWidget({ format: () => "" }); |
| 25 | |
| 26 | async.delay(500).then(async () => { |
| 27 | const root = progress.start("generation"); |
| 28 | const a = root.start("lorem ipsum generator 1"); |
| 29 | const b = root.start("the second generator"); |
| 30 | |
| 31 | (async () => { |
| 32 | let first = true; |
| 33 | let wrap = 0; |
| 34 | for (const word of lorem1) { |
| 35 | await async.delay(30 + Math.random() * 50); |
| 36 | if ((wrap + word.length) >= 80) { |
| 37 | a.log.write("\n"); |
| 38 | first = true; |
| 39 | wrap = 0; |
| 40 | } |
| 41 | if (!first) a.log.write(" "); |
| 42 | first = false; |
| 43 | a.log.write(word); |
| 44 | wrap += word.length + " ".length; |
| 45 | } |
| 46 | })(); |
| 47 | (async () => { |
| 48 | let first = true; |
| 49 | let wrap = 0; |
| 50 | for (const word of lorem2) { |
| 51 | await async.delay(30 + Math.random() * 50); |
| 52 | if ((wrap + word.length) >= 80) { |
| 53 | b.log.write("\n"); |
| 54 | first = true; |
| 55 | wrap = 0; |
| 56 | } |
| 57 | if (!first) b.log.write(" "); |
| 58 | first = false; |
| 59 | b.log.write(word); |
| 60 | wrap += word.length + " ".length; |
| 61 | } |
| 62 | })(); |
| 63 | }); |
| 64 | |
| 65 | import * as async from "../async.ts"; |
| 66 | import * as log from "../log.ts"; |
| 67 | import * as progress from "../progress.ts"; |