task-script-support-cli 0.3.0 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/assets/yargs-template/task-runner/package-lock.json +128 -110
  2. package/assets/yargs-template/task-runner/src/commands/verify.ts +3 -2
  3. package/assets/yargs-template/task-runner/src/services/banner-service.ts +13 -9
  4. package/assets/yargs-template/task-runner/src/tasks/banner/print-banner.ts +38 -0
  5. package/assets/yargs-template/task-runner/src/tasks/banner/resolve-banner-font.ts +70 -0
  6. package/assets/yargs-template/task-runner/src/types/state.ts +4 -0
  7. package/{dist/assets/yargs-template/task-runner/src/wrappers → assets/yargs-template/task-runner/src/wrappers/electives}/concurrent-task-group.ts +4 -4
  8. package/assets/yargs-template/task-runner/src/wrappers/electives/resolver-task.ts +87 -0
  9. package/assets/yargs-template/task-runner/src/wrappers/{sequential-task-group.ts → electives/sequential-task-group.ts} +4 -4
  10. package/assets/yargs-template/task-runner/tests/commands/verify.test.ts +14 -21
  11. package/dist/assets/yargs-template/task-runner/package-lock.json +128 -110
  12. package/dist/assets/yargs-template/task-runner/src/commands/verify.ts +3 -2
  13. package/dist/assets/yargs-template/task-runner/src/services/banner-service.ts +13 -9
  14. package/dist/assets/yargs-template/task-runner/src/tasks/banner/print-banner.ts +38 -0
  15. package/dist/assets/yargs-template/task-runner/src/tasks/banner/resolve-banner-font.ts +70 -0
  16. package/dist/assets/yargs-template/task-runner/src/types/state.ts +4 -0
  17. package/{assets/yargs-template/task-runner/src/wrappers → dist/assets/yargs-template/task-runner/src/wrappers/electives}/concurrent-task-group.ts +4 -4
  18. package/dist/assets/yargs-template/task-runner/src/wrappers/electives/resolver-task.ts +87 -0
  19. package/dist/assets/yargs-template/task-runner/src/wrappers/{sequential-task-group.ts → electives/sequential-task-group.ts} +4 -4
  20. package/dist/assets/yargs-template/task-runner/tests/commands/verify.test.ts +14 -21
  21. package/dist/package.json +1 -1
  22. package/dist/src/commands/gen.d.ts +3 -1
  23. package/dist/src/commands/gen.d.ts.map +1 -1
  24. package/dist/src/commands/gen.js +2 -0
  25. package/dist/src/commands/gen.js.map +1 -1
  26. package/dist/src/services/project-service.d.ts +21 -0
  27. package/dist/src/services/project-service.d.ts.map +1 -1
  28. package/dist/src/services/project-service.js +41 -0
  29. package/dist/src/services/project-service.js.map +1 -1
  30. package/dist/src/services/templater-service.d.ts +1 -0
  31. package/dist/src/services/templater-service.d.ts.map +1 -1
  32. package/dist/src/services/templater-service.js +9 -3
  33. package/dist/src/services/templater-service.js.map +1 -1
  34. package/dist/src/tasks/generate/generate-command.d.ts +10 -3
  35. package/dist/src/tasks/generate/generate-command.d.ts.map +1 -1
  36. package/dist/src/tasks/generate/generate-command.js +27 -11
  37. package/dist/src/tasks/generate/generate-command.js.map +1 -1
  38. package/dist/src/tasks/generate/generate-service.d.ts +10 -3
  39. package/dist/src/tasks/generate/generate-service.d.ts.map +1 -1
  40. package/dist/src/tasks/generate/generate-service.js +26 -12
  41. package/dist/src/tasks/generate/generate-service.js.map +1 -1
  42. package/dist/src/tasks/generate/generate-task.d.ts +10 -3
  43. package/dist/src/tasks/generate/generate-task.d.ts.map +1 -1
  44. package/dist/src/tasks/generate/generate-task.js +27 -13
  45. package/dist/src/tasks/generate/generate-task.js.map +1 -1
  46. package/dist/src/tasks/generate/project-context-guard.d.ts +1 -1
  47. package/dist/src/tasks/generate/project-context-guard.js +1 -1
  48. package/dist/src/tasks/generate/resolve-injectables.d.ts +56 -0
  49. package/dist/src/tasks/generate/resolve-injectables.d.ts.map +1 -0
  50. package/dist/src/tasks/generate/resolve-injectables.js +134 -0
  51. package/dist/src/tasks/generate/resolve-injectables.js.map +1 -0
  52. package/dist/src/tasks/generate/select-gen-target-name.js +4 -4
  53. package/dist/src/tasks/generate/select-gen-target-name.js.map +1 -1
  54. package/dist/src/tasks/generate/select-gen-target.d.ts +1 -1
  55. package/dist/src/tasks/generate/select-gen-target.js +2 -2
  56. package/dist/src/tasks/generate/select-gen-target.js.map +1 -1
  57. package/dist/src/tasks/stdout/print-generated-results.js +2 -2
  58. package/dist/src/tasks/stdout/print-generated-results.js.map +1 -1
  59. package/dist/src/tasks/sync-configuration.d.ts +1 -1
  60. package/dist/src/tasks/sync-configuration.js +6 -6
  61. package/dist/src/tasks/sync-configuration.js.map +1 -1
  62. package/dist/src/types/state.d.ts +7 -3
  63. package/dist/src/types/state.d.ts.map +1 -1
  64. package/dist/src/types/state.js.map +1 -1
  65. package/package.json +1 -1
  66. package/src/commands/gen.ts +2 -0
  67. package/src/services/project-service.ts +54 -0
  68. package/src/services/templater-service.ts +15 -3
  69. package/src/tasks/generate/generate-command.ts +21 -11
  70. package/src/tasks/generate/generate-service.ts +20 -11
  71. package/src/tasks/generate/generate-task.ts +21 -12
  72. package/src/tasks/generate/project-context-guard.ts +1 -1
  73. package/src/tasks/generate/resolve-injectables.ts +154 -0
  74. package/src/tasks/generate/select-gen-target-name.ts +4 -4
  75. package/src/tasks/generate/select-gen-target.ts +2 -2
  76. package/src/tasks/stdout/print-generated-results.ts +2 -2
  77. package/src/tasks/sync-configuration.ts +6 -6
  78. package/src/types/state.ts +9 -3
  79. package/assets/yargs-template/task-runner/src/tasks/print-banner.ts +0 -73
  80. package/dist/assets/yargs-template/task-runner/src/tasks/print-banner.ts +0 -73
  81. package/dist/src/wrappers/gen-app-task.d.ts +0 -50
  82. package/dist/src/wrappers/gen-app-task.d.ts.map +0 -1
  83. package/dist/src/wrappers/gen-app-task.js +0 -124
  84. package/dist/src/wrappers/gen-app-task.js.map +0 -1
  85. package/src/wrappers/gen-app-task.ts +0 -150
@@ -51,21 +51,21 @@
51
51
  "license": "Apache-2.0"
52
52
  },
53
53
  "node_modules/@emnapi/core": {
54
- "version": "1.9.1",
55
- "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz",
56
- "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==",
54
+ "version": "1.10.0",
55
+ "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz",
56
+ "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==",
57
57
  "dev": true,
58
58
  "license": "MIT",
59
59
  "optional": true,
60
60
  "dependencies": {
61
- "@emnapi/wasi-threads": "1.2.0",
61
+ "@emnapi/wasi-threads": "1.2.1",
62
62
  "tslib": "^2.4.0"
63
63
  }
64
64
  },
65
65
  "node_modules/@emnapi/runtime": {
66
- "version": "1.9.1",
67
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz",
68
- "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==",
66
+ "version": "1.10.0",
67
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz",
68
+ "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==",
69
69
  "dev": true,
70
70
  "license": "MIT",
71
71
  "optional": true,
@@ -74,9 +74,9 @@
74
74
  }
75
75
  },
76
76
  "node_modules/@emnapi/wasi-threads": {
77
- "version": "1.2.0",
78
- "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.0.tgz",
79
- "integrity": "sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==",
77
+ "version": "1.2.1",
78
+ "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz",
79
+ "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==",
80
80
  "dev": true,
81
81
  "license": "MIT",
82
82
  "optional": true,
@@ -264,14 +264,14 @@
264
264
  "license": "MIT"
265
265
  },
266
266
  "node_modules/@napi-rs/wasm-runtime": {
267
- "version": "1.1.3",
268
- "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.3.tgz",
269
- "integrity": "sha512-xK9sGVbJWYb08+mTJt3/YV24WxvxpXcXtP6B172paPZ+Ts69Re9dAr7lKwJoeIx8OoeuimEiRZ7umkiUVClmmQ==",
267
+ "version": "1.1.5",
268
+ "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.5.tgz",
269
+ "integrity": "sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q==",
270
270
  "dev": true,
271
271
  "license": "MIT",
272
272
  "optional": true,
273
273
  "dependencies": {
274
- "@tybys/wasm-util": "^0.10.1"
274
+ "@tybys/wasm-util": "^0.10.2"
275
275
  },
276
276
  "funding": {
277
277
  "type": "github",
@@ -283,9 +283,9 @@
283
283
  }
284
284
  },
285
285
  "node_modules/@oxc-project/types": {
286
- "version": "0.123.0",
287
- "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.123.0.tgz",
288
- "integrity": "sha512-YtECP/y8Mj1lSHiUWGSRzy/C6teUKlS87dEfuVKT09LgQbUsBW1rNg+MiJ4buGu3yuADV60gbIvo9/HplA56Ew==",
286
+ "version": "0.133.0",
287
+ "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.133.0.tgz",
288
+ "integrity": "sha512-KzkdCd6Uxqnf6l3HOw1xfatAlUURA0g14cvBYFyJ5SaNOQbOUvBr9PKArcPcrNIeRsBdgcUzOGrhKveVpvOIGA==",
289
289
  "dev": true,
290
290
  "license": "MIT",
291
291
  "funding": {
@@ -312,9 +312,9 @@
312
312
  }
313
313
  },
314
314
  "node_modules/@rolldown/binding-android-arm64": {
315
- "version": "1.0.0-rc.13",
316
- "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.13.tgz",
317
- "integrity": "sha512-5ZiiecKH2DXAVJTNN13gNMUcCDg4Jy8ZjbXEsPnqa248wgOVeYRX0iqXXD5Jz4bI9BFHgKsI2qmyJynstbmr+g==",
315
+ "version": "1.0.3",
316
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.3.tgz",
317
+ "integrity": "sha512-454rs7jHngixp/NMxd5srYD57OnzSlZ/eFTETjORQHLwJG1lRtmNOJcBerZlfu4GjKqeq8aCCIQrMdHyhI51Hw==",
318
318
  "cpu": [
319
319
  "arm64"
320
320
  ],
@@ -329,9 +329,9 @@
329
329
  }
330
330
  },
331
331
  "node_modules/@rolldown/binding-darwin-arm64": {
332
- "version": "1.0.0-rc.13",
333
- "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.13.tgz",
334
- "integrity": "sha512-tz/v/8G77seu8zAB3A5sK3UFoOl06zcshEzhUO62sAEtrEuW/H1CcyoupOrD+NbQJytYgA4CppXPzlrmp4JZKA==",
332
+ "version": "1.0.3",
333
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.3.tgz",
334
+ "integrity": "sha512-PcAhP+ynjURNyy8SKGl5DQP94aGuB/7JrXJb/t7P+hanXvQVMWzUvRRhBAcg/lNRadBhoUPqSoP4xw5tR/KBEA==",
335
335
  "cpu": [
336
336
  "arm64"
337
337
  ],
@@ -346,9 +346,9 @@
346
346
  }
347
347
  },
348
348
  "node_modules/@rolldown/binding-darwin-x64": {
349
- "version": "1.0.0-rc.13",
350
- "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.13.tgz",
351
- "integrity": "sha512-8DakphqOz8JrMYWTJmWA+vDJxut6LijZ8Xcdc4flOlAhU7PNVwo2MaWBF9iXjJAPo5rC/IxEFZDhJ3GC7NHvug==",
349
+ "version": "1.0.3",
350
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.3.tgz",
351
+ "integrity": "sha512-9YpfeUvSE2RS7wysJ81uOZkXJz7f7Q55H2Gvp3VEw/EsahqDtrphrZ0EwDLK5vvKOzaCrBsjF8JmnMLcUt78Gg==",
352
352
  "cpu": [
353
353
  "x64"
354
354
  ],
@@ -363,9 +363,9 @@
363
363
  }
364
364
  },
365
365
  "node_modules/@rolldown/binding-freebsd-x64": {
366
- "version": "1.0.0-rc.13",
367
- "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.13.tgz",
368
- "integrity": "sha512-4wBQFfjDuXYN/SVI8inBF3Aa+isq40rc6VMFbk5jcpolUBTe5cYnMsHZ51nFWsx3PVyyNN3vgoESki0Hmr/4BA==",
366
+ "version": "1.0.3",
367
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.3.tgz",
368
+ "integrity": "sha512-yB1IlAsSNHncV6SCTL27/MVGR5htvQsoGxIv5KMGXALp+Ll1wYsn+x98M9MW7qa+NdSbvrrY7ANI4wLJ0n1e6g==",
369
369
  "cpu": [
370
370
  "x64"
371
371
  ],
@@ -380,9 +380,9 @@
380
380
  }
381
381
  },
382
382
  "node_modules/@rolldown/binding-linux-arm-gnueabihf": {
383
- "version": "1.0.0-rc.13",
384
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.13.tgz",
385
- "integrity": "sha512-JW/e4yPIXLms+jmnbwwy5LA/LxVwZUWLN8xug+V200wzaVi5TEGIWQlh8o91gWYFxW609euI98OCCemmWGuPrw==",
383
+ "version": "1.0.3",
384
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.3.tgz",
385
+ "integrity": "sha512-Yi30IVAAfLUCy2MseFjbB1jAMDl1VMCAas5StnYp8da9+CKvMd2H2cbEjWcw5NPaPqzvYkVIaF1nNUG+b7u/sw==",
386
386
  "cpu": [
387
387
  "arm"
388
388
  ],
@@ -397,13 +397,16 @@
397
397
  }
398
398
  },
399
399
  "node_modules/@rolldown/binding-linux-arm64-gnu": {
400
- "version": "1.0.0-rc.13",
401
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.13.tgz",
402
- "integrity": "sha512-ZfKWpXiUymDnavepCaM6KG/uGydJ4l2nBmMxg60Ci4CbeefpqjPWpfaZM7PThOhk2dssqBAcwLc6rAyr0uTdXg==",
400
+ "version": "1.0.3",
401
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.3.tgz",
402
+ "integrity": "sha512-jsO7R8To+AdlYgUmN5sHSCZbfhtMBkO0WUx8iORQnPcMMdgr7qM2DQmMwgabs3GhNztdmoKkMKQFHD6DTMCIQw==",
403
403
  "cpu": [
404
404
  "arm64"
405
405
  ],
406
406
  "dev": true,
407
+ "libc": [
408
+ "glibc"
409
+ ],
407
410
  "license": "MIT",
408
411
  "optional": true,
409
412
  "os": [
@@ -414,13 +417,16 @@
414
417
  }
415
418
  },
416
419
  "node_modules/@rolldown/binding-linux-arm64-musl": {
417
- "version": "1.0.0-rc.13",
418
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.13.tgz",
419
- "integrity": "sha512-bmRg3O6Z0gq9yodKKWCIpnlH051sEfdVwt+6m5UDffAQMUUqU0xjnQqqAUm+Gu7ofAAly9DqiQDtKu2nPDEABA==",
420
+ "version": "1.0.3",
421
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.3.tgz",
422
+ "integrity": "sha512-VWkUHwWriDciit80wleYwKILoR/KMvxh/IdwS/paX+ZgpuRpCrKLUdadJbc0NpBEiyhpYawsJ73j9aCvOH+f7Q==",
420
423
  "cpu": [
421
424
  "arm64"
422
425
  ],
423
426
  "dev": true,
427
+ "libc": [
428
+ "musl"
429
+ ],
424
430
  "license": "MIT",
425
431
  "optional": true,
426
432
  "os": [
@@ -431,13 +437,16 @@
431
437
  }
432
438
  },
433
439
  "node_modules/@rolldown/binding-linux-ppc64-gnu": {
434
- "version": "1.0.0-rc.13",
435
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.13.tgz",
436
- "integrity": "sha512-8Wtnbw4k7pMYN9B/mOEAsQ8HOiq7AZ31Ig4M9BKn2So4xRaFEhtCSa4ZJaOutOWq50zpgR4N5+L/opnlaCx8wQ==",
440
+ "version": "1.0.3",
441
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.3.tgz",
442
+ "integrity": "sha512-5f1laC0SlIR0yDbFCd8acUhvJIag6N3zC5P7oUPN6wX0aOma+uKJ0wBDH5aq7I1PVI2ttTlhJwzwRIBnLiSGEg==",
437
443
  "cpu": [
438
444
  "ppc64"
439
445
  ],
440
446
  "dev": true,
447
+ "libc": [
448
+ "glibc"
449
+ ],
441
450
  "license": "MIT",
442
451
  "optional": true,
443
452
  "os": [
@@ -448,13 +457,16 @@
448
457
  }
449
458
  },
450
459
  "node_modules/@rolldown/binding-linux-s390x-gnu": {
451
- "version": "1.0.0-rc.13",
452
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.13.tgz",
453
- "integrity": "sha512-D/0Nlo8mQuxSMohNJUF2lDXWRsFDsHldfRRgD9bRgktj+EndGPj4DOV37LqDKPYS+osdyhZEH7fTakTAEcW7qg==",
460
+ "version": "1.0.3",
461
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.3.tgz",
462
+ "integrity": "sha512-Iq4ko0r4XsgbrF/LunNgHtAGLRRVE2kXonAXQ/MV0mC6jQpMOhW1SvtZja2EhC/kd05++bP78dsqBeIQyYJ6Yg==",
454
463
  "cpu": [
455
464
  "s390x"
456
465
  ],
457
466
  "dev": true,
467
+ "libc": [
468
+ "glibc"
469
+ ],
458
470
  "license": "MIT",
459
471
  "optional": true,
460
472
  "os": [
@@ -465,13 +477,16 @@
465
477
  }
466
478
  },
467
479
  "node_modules/@rolldown/binding-linux-x64-gnu": {
468
- "version": "1.0.0-rc.13",
469
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.13.tgz",
470
- "integrity": "sha512-eRrPvat2YaVQcwwKi/JzOP6MKf1WRnOCr+VaI3cTWz3ZoLcP/654z90lVCJ4dAuMEpPdke0n+qyAqXDZdIC4rA==",
480
+ "version": "1.0.3",
481
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.3.tgz",
482
+ "integrity": "sha512-B8m6tD5+/N5FeNQFbKlLA/2yVq9ycQP1SeedyEYYKWBNR3ZQbkvIUcNnDNM03lO1l5F2roiiFJGgvoLLyZXtSg==",
471
483
  "cpu": [
472
484
  "x64"
473
485
  ],
474
486
  "dev": true,
487
+ "libc": [
488
+ "glibc"
489
+ ],
475
490
  "license": "MIT",
476
491
  "optional": true,
477
492
  "os": [
@@ -482,13 +497,16 @@
482
497
  }
483
498
  },
484
499
  "node_modules/@rolldown/binding-linux-x64-musl": {
485
- "version": "1.0.0-rc.13",
486
- "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.13.tgz",
487
- "integrity": "sha512-PsdONiFRp8hR8KgVjTWjZ9s7uA3uueWL0t74/cKHfM4dR5zXYv4AjB8BvA+QDToqxAFg4ZkcVEqeu5F7inoz5w==",
500
+ "version": "1.0.3",
501
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.3.tgz",
502
+ "integrity": "sha512-pSdpdUJHkuCxun9LE7jvgUB9qsRgaiyNNCX7m/AvHTcq67AiT/Yhoxvw5zPfhrM8k/BfP8ce/hMOpthKDpEUow==",
488
503
  "cpu": [
489
504
  "x64"
490
505
  ],
491
506
  "dev": true,
507
+ "libc": [
508
+ "musl"
509
+ ],
492
510
  "license": "MIT",
493
511
  "optional": true,
494
512
  "os": [
@@ -499,9 +517,9 @@
499
517
  }
500
518
  },
501
519
  "node_modules/@rolldown/binding-openharmony-arm64": {
502
- "version": "1.0.0-rc.13",
503
- "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.13.tgz",
504
- "integrity": "sha512-hCNXgC5dI3TVOLrPT++PKFNZ+1EtS0mLQwfXXXSUD/+rGlB65gZDwN/IDuxLpQP4x8RYYHqGomlUXzpO8aVI2w==",
520
+ "version": "1.0.3",
521
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.3.tgz",
522
+ "integrity": "sha512-OXXS3RKJgX2uLwM+gYyuH5omcH8fL1LJs96pZGgtetVCahON57+d4SJHzTgZiOjxgGkSnpXpOsWuPDGAKAigEg==",
505
523
  "cpu": [
506
524
  "arm64"
507
525
  ],
@@ -516,9 +534,9 @@
516
534
  }
517
535
  },
518
536
  "node_modules/@rolldown/binding-wasm32-wasi": {
519
- "version": "1.0.0-rc.13",
520
- "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.13.tgz",
521
- "integrity": "sha512-viLS5C5et8NFtLWw9Sw3M/w4vvnVkbWkO7wSNh3C+7G1+uCkGpr6PcjNDSFcNtmXY/4trjPBqUfcOL+P3sWy/g==",
537
+ "version": "1.0.3",
538
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.3.tgz",
539
+ "integrity": "sha512-JTtb8BWFynicNSoPrehsCzBtOKjZ6jhMiPFEmOiuXg1Fl8dn2KHQob+GuPSGR0dryQa1PQJbzjF3dqO/whhjLg==",
522
540
  "cpu": [
523
541
  "wasm32"
524
542
  ],
@@ -526,18 +544,18 @@
526
544
  "license": "MIT",
527
545
  "optional": true,
528
546
  "dependencies": {
529
- "@emnapi/core": "1.9.1",
530
- "@emnapi/runtime": "1.9.1",
531
- "@napi-rs/wasm-runtime": "^1.1.2"
547
+ "@emnapi/core": "1.10.0",
548
+ "@emnapi/runtime": "1.10.0",
549
+ "@napi-rs/wasm-runtime": "^1.1.4"
532
550
  },
533
551
  "engines": {
534
- "node": ">=14.0.0"
552
+ "node": "^20.19.0 || >=22.12.0"
535
553
  }
536
554
  },
537
555
  "node_modules/@rolldown/binding-win32-arm64-msvc": {
538
- "version": "1.0.0-rc.13",
539
- "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.13.tgz",
540
- "integrity": "sha512-Fqa3Tlt1xL4wzmAYxGNFV36Hb+VfPc9PYU+E25DAnswXv3ODDu/yyWjQDbXMo5AGWkQVjLgQExuVu8I/UaZhPQ==",
556
+ "version": "1.0.3",
557
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.3.tgz",
558
+ "integrity": "sha512-gEdFFEN70A/jxb2svrWsN3aDL7OUtmvlOy+6fa2jxG8K0wQ1ZbdeLGnidov6Yu5/733dI5ySfzFlQ/cb0bSz1g==",
541
559
  "cpu": [
542
560
  "arm64"
543
561
  ],
@@ -552,9 +570,9 @@
552
570
  }
553
571
  },
554
572
  "node_modules/@rolldown/binding-win32-x64-msvc": {
555
- "version": "1.0.0-rc.13",
556
- "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.13.tgz",
557
- "integrity": "sha512-/pLI5kPkGEi44TDlnbio3St/5gUFeN51YWNAk/Gnv6mEQBOahRBh52qVFVBpmrnU01n2yysvBML9Ynu7K4kGAQ==",
573
+ "version": "1.0.3",
574
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.3.tgz",
575
+ "integrity": "sha512-eXB7CHuaQdqmJcc3koCNtNPmT/bj2gc999kUFgBxG8Ac0NdgXc4rkCHhqrgrhN3zddvvvrgzj1e90SuSfmyIXA==",
558
576
  "cpu": [
559
577
  "x64"
560
578
  ],
@@ -569,9 +587,9 @@
569
587
  }
570
588
  },
571
589
  "node_modules/@rolldown/pluginutils": {
572
- "version": "1.0.0-rc.13",
573
- "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.13.tgz",
574
- "integrity": "sha512-3ngTAv6F/Py35BsYbeeLeecvhMKdsKm4AoOETVhAA+Qc8nrA2I0kF7oa93mE9qnIurngOSpMnQ0x2nQY2FPviA==",
590
+ "version": "1.0.1",
591
+ "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz",
592
+ "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==",
575
593
  "dev": true,
576
594
  "license": "MIT"
577
595
  },
@@ -583,9 +601,9 @@
583
601
  "license": "MIT"
584
602
  },
585
603
  "node_modules/@tybys/wasm-util": {
586
- "version": "0.10.1",
587
- "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz",
588
- "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==",
604
+ "version": "0.10.2",
605
+ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz",
606
+ "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==",
589
607
  "dev": true,
590
608
  "license": "MIT",
591
609
  "optional": true,
@@ -2212,9 +2230,9 @@
2212
2230
  "license": "MIT"
2213
2231
  },
2214
2232
  "node_modules/nanoid": {
2215
- "version": "3.3.11",
2216
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
2217
- "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
2233
+ "version": "3.3.12",
2234
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz",
2235
+ "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==",
2218
2236
  "dev": true,
2219
2237
  "funding": [
2220
2238
  {
@@ -2466,9 +2484,9 @@
2466
2484
  "license": "MIT"
2467
2485
  },
2468
2486
  "node_modules/postcss": {
2469
- "version": "8.5.13",
2470
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.13.tgz",
2471
- "integrity": "sha512-qif0+jGGZoLWdHey3UFHHWP0H7Gbmsk8T5VEqyYFbWqPr1XqvLGBbk/sl8V5exGmcYJklJOhOQq1pV9IcsiFag==",
2487
+ "version": "8.5.15",
2488
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz",
2489
+ "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==",
2472
2490
  "dev": true,
2473
2491
  "funding": [
2474
2492
  {
@@ -2486,7 +2504,7 @@
2486
2504
  ],
2487
2505
  "license": "MIT",
2488
2506
  "dependencies": {
2489
- "nanoid": "^3.3.11",
2507
+ "nanoid": "^3.3.12",
2490
2508
  "picocolors": "^1.1.1",
2491
2509
  "source-map-js": "^1.2.1"
2492
2510
  },
@@ -2642,14 +2660,14 @@
2642
2660
  "license": "Apache-2.0"
2643
2661
  },
2644
2662
  "node_modules/rolldown": {
2645
- "version": "1.0.0-rc.13",
2646
- "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.13.tgz",
2647
- "integrity": "sha512-bvVj8YJmf0rq4pSFmH7laLa6pYrhghv3PRzrCdRAr23g66zOKVJ4wkvFtgohtPLWmthgg8/rkaqRHrpUEh0Zbw==",
2663
+ "version": "1.0.3",
2664
+ "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.3.tgz",
2665
+ "integrity": "sha512-i00lAJ2ks1BYr7rjNjKC7BcqAS7nVfiT3QX1SI5aY+AFHblCmaUf9OE9dbdzDvW6dJxbi2ZCZiy9v3CcwOiX3g==",
2648
2666
  "dev": true,
2649
2667
  "license": "MIT",
2650
2668
  "dependencies": {
2651
- "@oxc-project/types": "=0.123.0",
2652
- "@rolldown/pluginutils": "1.0.0-rc.13"
2669
+ "@oxc-project/types": "=0.133.0",
2670
+ "@rolldown/pluginutils": "^1.0.0"
2653
2671
  },
2654
2672
  "bin": {
2655
2673
  "rolldown": "bin/cli.mjs"
@@ -2658,21 +2676,21 @@
2658
2676
  "node": "^20.19.0 || >=22.12.0"
2659
2677
  },
2660
2678
  "optionalDependencies": {
2661
- "@rolldown/binding-android-arm64": "1.0.0-rc.13",
2662
- "@rolldown/binding-darwin-arm64": "1.0.0-rc.13",
2663
- "@rolldown/binding-darwin-x64": "1.0.0-rc.13",
2664
- "@rolldown/binding-freebsd-x64": "1.0.0-rc.13",
2665
- "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.13",
2666
- "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.13",
2667
- "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.13",
2668
- "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.13",
2669
- "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.13",
2670
- "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.13",
2671
- "@rolldown/binding-linux-x64-musl": "1.0.0-rc.13",
2672
- "@rolldown/binding-openharmony-arm64": "1.0.0-rc.13",
2673
- "@rolldown/binding-wasm32-wasi": "1.0.0-rc.13",
2674
- "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.13",
2675
- "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.13"
2679
+ "@rolldown/binding-android-arm64": "1.0.3",
2680
+ "@rolldown/binding-darwin-arm64": "1.0.3",
2681
+ "@rolldown/binding-darwin-x64": "1.0.3",
2682
+ "@rolldown/binding-freebsd-x64": "1.0.3",
2683
+ "@rolldown/binding-linux-arm-gnueabihf": "1.0.3",
2684
+ "@rolldown/binding-linux-arm64-gnu": "1.0.3",
2685
+ "@rolldown/binding-linux-arm64-musl": "1.0.3",
2686
+ "@rolldown/binding-linux-ppc64-gnu": "1.0.3",
2687
+ "@rolldown/binding-linux-s390x-gnu": "1.0.3",
2688
+ "@rolldown/binding-linux-x64-gnu": "1.0.3",
2689
+ "@rolldown/binding-linux-x64-musl": "1.0.3",
2690
+ "@rolldown/binding-openharmony-arm64": "1.0.3",
2691
+ "@rolldown/binding-wasm32-wasi": "1.0.3",
2692
+ "@rolldown/binding-win32-arm64-msvc": "1.0.3",
2693
+ "@rolldown/binding-win32-x64-msvc": "1.0.3"
2676
2694
  }
2677
2695
  },
2678
2696
  "node_modules/safe-stable-stringify": {
@@ -2878,14 +2896,14 @@
2878
2896
  "license": "MIT"
2879
2897
  },
2880
2898
  "node_modules/tinyglobby": {
2881
- "version": "0.2.15",
2882
- "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz",
2883
- "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==",
2899
+ "version": "0.2.17",
2900
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz",
2901
+ "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==",
2884
2902
  "dev": true,
2885
2903
  "license": "MIT",
2886
2904
  "dependencies": {
2887
2905
  "fdir": "^6.5.0",
2888
- "picomatch": "^4.0.3"
2906
+ "picomatch": "^4.0.4"
2889
2907
  },
2890
2908
  "engines": {
2891
2909
  "node": ">=12.0.0"
@@ -3065,17 +3083,17 @@
3065
3083
  }
3066
3084
  },
3067
3085
  "node_modules/vite": {
3068
- "version": "8.0.7",
3069
- "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.7.tgz",
3070
- "integrity": "sha512-P1PbweD+2/udplnThz3btF4cf6AgPky7kk23RtHUkJIU5BIxwPprhRGmOAHs6FTI7UiGbTNrgNP6jSYD6JaRnw==",
3086
+ "version": "8.0.16",
3087
+ "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.16.tgz",
3088
+ "integrity": "sha512-h9bXPmJichP5fLmVQo3PyaGSDE2n3aPuomeAlVRm0JLmt4rY6zmPKd59HYI4LNW8oTK7tlTsuC7l/m7awx9Jcw==",
3071
3089
  "dev": true,
3072
3090
  "license": "MIT",
3073
3091
  "dependencies": {
3074
3092
  "lightningcss": "^1.32.0",
3075
3093
  "picomatch": "^4.0.4",
3076
- "postcss": "^8.5.8",
3077
- "rolldown": "1.0.0-rc.13",
3078
- "tinyglobby": "^0.2.15"
3094
+ "postcss": "^8.5.15",
3095
+ "rolldown": "1.0.3",
3096
+ "tinyglobby": "^0.2.17"
3079
3097
  },
3080
3098
  "bin": {
3081
3099
  "vite": "bin/vite.js"
@@ -3091,7 +3109,7 @@
3091
3109
  },
3092
3110
  "peerDependencies": {
3093
3111
  "@types/node": "^20.19.0 || >=22.12.0",
3094
- "@vitejs/devtools": "^0.1.0",
3112
+ "@vitejs/devtools": "^0.1.18",
3095
3113
  "esbuild": "^0.27.0 || ^0.28.0",
3096
3114
  "jiti": ">=1.21.0",
3097
3115
  "less": "^4.0.0",
@@ -1,10 +1,11 @@
1
1
  import { singleton } from "tsyringe";
2
2
  import { Command } from "../wrappers/command";
3
3
  import CheckEnv from "../tasks/check-env";
4
- import PrintBanner from "../tasks/print-banner";
4
+ import PrintBanner from "../tasks/banner/print-banner";
5
5
  import LogState from "../tasks/log-state";
6
+ import ResolveBannerFont from "../tasks/banner/resolve-banner-font";
6
7
 
7
8
  @singleton()
8
9
  export class VerifyCommand extends Command {
9
- tasks = [PrintBanner, CheckEnv, LogState];
10
+ tasks = [ResolveBannerFont, PrintBanner, CheckEnv, LogState];
10
11
  }
@@ -1,17 +1,21 @@
1
1
  import { singleton } from "tsyringe";
2
2
  import figlet from "figlet";
3
3
 
4
+ /**
5
+ * BannerService
6
+ *
7
+ * Handles the generation of banner text using figlet.
8
+ *
9
+ * Some figlet fonts to try:
10
+ * ["ANSI Compact", "AMC Slash", "ANSI Shadow",
11
+ * "Basic", "Big", "Bell", "Calvin S", "Coinstak",
12
+ * "DOS Rebel", "Elite", "Emboss", "Future Smooth",
13
+ * "Kban", "Larry 3D 2", "Mono 9", "Shadow",
14
+ * "Small Poison", "Star Wars"]
15
+ */
4
16
  @singleton()
5
17
  export class BannerService {
6
- _selectFonts = [
7
- "AMC Slash",
8
- "Calvin S",
9
- "Bell",
10
- "Pagga",
11
- "Shadow",
12
- "Small Block",
13
- ];
14
- defaultFontFamily: string = "Cybermedium";
18
+ defaultFontFamily: string = "Standard";
15
19
 
16
20
  async toBanner(text: string, font?: string): Promise<string> {
17
21
  return await figlet.text(text, {
@@ -0,0 +1,38 @@
1
+ import { autoInjectable } from "tsyringe";
2
+ import { AppState } from "../../types/state";
3
+ import { AppTask } from "../../wrappers/app-task";
4
+ import { BannerService } from "../../services/banner-service";
5
+ import { UtilService } from "../../services/util-service";
6
+ import chalk from "chalk";
7
+
8
+ /**
9
+ * Prints an app banner to the console
10
+ */
11
+ @autoInjectable()
12
+ export default class PrintBanner extends AppTask {
13
+ loggerName = "Print Banner";
14
+
15
+ constructor(
16
+ private bannerService: BannerService,
17
+ private utilService: UtilService,
18
+ ) {
19
+ super();
20
+ }
21
+
22
+ async run({ data: { banner } }: AppState): Promise<Partial<AppState> | void> {
23
+ try {
24
+ console.log(
25
+ chalk.blueBright(
26
+ await this.bannerService.toBanner(
27
+ this.utilService.getAppName(),
28
+ banner?.font,
29
+ ),
30
+ ),
31
+ );
32
+
33
+ this.setData({ banner: { status: "success" } });
34
+ } catch (err) {
35
+ this.setData({ banner: { status: "failed" }, errorMessages: [`${err}`] });
36
+ }
37
+ }
38
+ }
@@ -0,0 +1,70 @@
1
+ import { autoInjectable } from "tsyringe";
2
+ import { BannerService } from "../../services/banner-service";
3
+ import ResolverTask from "../../wrappers/electives/resolver-task";
4
+ import { CLIArgs } from "../../types/state";
5
+
6
+ /**
7
+ * ResolveBannerFont (Optional ResolverTask Pattern)
8
+ *
9
+ * ResolverTask that updates the AppStateData banner field. Resolves the banner
10
+ * font field via user input (bannerFont arg) or a randomly selected font value
11
+ * (randomFont arg). Uses BannerService's default otherwise. Doesn't define an
12
+ * envVar so doesn't support env overrides.
13
+ */
14
+ @autoInjectable()
15
+ export default class ResolveBannerFont extends ResolverTask {
16
+ loggerName = "ResolveBannerFont";
17
+
18
+ resolveTo = "banner" as const;
19
+ argVar = "bannerFont" as const;
20
+
21
+ constructor(private bannerService: BannerService) {
22
+ super();
23
+ }
24
+
25
+ /**
26
+ * Get the default banner font value.
27
+ */
28
+ //@override
29
+ async getDefaultValue<T>(): Promise<T | undefined> {
30
+ return { font: this.bannerService.defaultFontFamily } as T;
31
+ }
32
+
33
+ /**
34
+ * Attempt to resolve the font from the CLI args.
35
+ *
36
+ * @param args the CLIArgs to resolve from.
37
+ * @returns the resolved font, or undefined if no font args provided
38
+ */
39
+ //@override
40
+ async getArg<T>(args: CLIArgs) {
41
+ const bannerFont = args.bannerFont;
42
+ if (bannerFont) {
43
+ await this.validateFont(bannerFont);
44
+ return { font: bannerFont } as T;
45
+ }
46
+
47
+ // also allow --random-font arg as an override
48
+ if (args.randomFont) {
49
+ const randomFont = await this.bannerService.getRandomFont();
50
+ this.logger.debug(`Using random font ${randomFont}`);
51
+ return { font: randomFont } as T;
52
+ }
53
+
54
+ return undefined;
55
+ }
56
+
57
+ /**
58
+ * Validate a provided font is supported.
59
+ *
60
+ * @param font the font to validate.
61
+ * @throws Error if the font is not supported.
62
+ */
63
+ async validateFont(font: string): Promise<void> {
64
+ const availableFonts = await this.bannerService.getSupportedFonts();
65
+
66
+ if (!availableFonts.includes(font)) {
67
+ throw new Error(`Unsupported font provided: ${font}`);
68
+ }
69
+ }
70
+ }