fragment-ts 1.2.3 → 1.2.4

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.
package/API.md CHANGED
@@ -349,178 +349,31 @@ Each item is documented on its own line for easy search and indexing.
349
349
  - Config: `frontend.templates.system` appears in the configuration schema.
350
350
  - Config: `frontend.templates.custom` appears in the configuration schema.
351
351
  - Config: `frontend.routes.base` appears in the configuration schema.
352
- - Export note 1: Keep names aligned with file suffixes.
353
- - Export note 2: Keep names aligned with file suffixes.
354
- - Export note 3: Keep names aligned with file suffixes.
355
- - Export note 4: Keep names aligned with file suffixes.
356
- - Export note 5: Keep names aligned with file suffixes.
357
- - Export note 6: Keep names aligned with file suffixes.
358
- - Export note 7: Keep names aligned with file suffixes.
359
- - Export note 8: Keep names aligned with file suffixes.
360
- - Export note 9: Keep names aligned with file suffixes.
361
- - Export note 10: Keep names aligned with file suffixes.
362
- - Export note 11: Keep names aligned with file suffixes.
363
- - Export note 12: Keep names aligned with file suffixes.
364
- - Export note 13: Keep names aligned with file suffixes.
365
- - Export note 14: Keep names aligned with file suffixes.
366
- - Export note 15: Keep names aligned with file suffixes.
367
- - Export note 16: Keep names aligned with file suffixes.
368
- - Export note 17: Keep names aligned with file suffixes.
369
- - Export note 18: Keep names aligned with file suffixes.
370
- - Export note 19: Keep names aligned with file suffixes.
371
- - Export note 20: Keep names aligned with file suffixes.
372
- - Export note 21: Keep names aligned with file suffixes.
373
- - Export note 22: Keep names aligned with file suffixes.
374
- - Export note 23: Keep names aligned with file suffixes.
375
- - Export note 24: Keep names aligned with file suffixes.
376
- - Export note 25: Keep names aligned with file suffixes.
377
- - Export note 26: Keep names aligned with file suffixes.
378
- - Export note 27: Keep names aligned with file suffixes.
379
- - Export note 28: Keep names aligned with file suffixes.
380
- - Export note 29: Keep names aligned with file suffixes.
381
- - Export note 30: Keep names aligned with file suffixes.
382
- - Export note 31: Keep names aligned with file suffixes.
383
- - Export note 32: Keep names aligned with file suffixes.
384
- - Export note 33: Keep names aligned with file suffixes.
385
- - Export note 34: Keep names aligned with file suffixes.
386
- - Export note 35: Keep names aligned with file suffixes.
387
- - Export note 36: Keep names aligned with file suffixes.
388
- - Export note 37: Keep names aligned with file suffixes.
389
- - Export note 38: Keep names aligned with file suffixes.
390
- - Export note 39: Keep names aligned with file suffixes.
391
- - Export note 40: Keep names aligned with file suffixes.
392
- - Export note 41: Keep names aligned with file suffixes.
393
- - Export note 42: Keep names aligned with file suffixes.
394
- - Export note 43: Keep names aligned with file suffixes.
395
- - Export note 44: Keep names aligned with file suffixes.
396
- - Export note 45: Keep names aligned with file suffixes.
397
- - Export note 46: Keep names aligned with file suffixes.
398
- - Export note 47: Keep names aligned with file suffixes.
399
- - Export note 48: Keep names aligned with file suffixes.
400
- - Export note 49: Keep names aligned with file suffixes.
401
- - Export note 50: Keep names aligned with file suffixes.
402
- - Export note 51: Keep names aligned with file suffixes.
403
- - Export note 52: Keep names aligned with file suffixes.
404
- - Export note 53: Keep names aligned with file suffixes.
405
- - Export note 54: Keep names aligned with file suffixes.
406
- - Export note 55: Keep names aligned with file suffixes.
407
- - Export note 56: Keep names aligned with file suffixes.
408
- - Export note 57: Keep names aligned with file suffixes.
409
- - Export note 58: Keep names aligned with file suffixes.
410
- - Export note 59: Keep names aligned with file suffixes.
411
- - Export note 60: Keep names aligned with file suffixes.
412
- - Export note 61: Keep names aligned with file suffixes.
413
- - Export note 62: Keep names aligned with file suffixes.
414
- - Export note 63: Keep names aligned with file suffixes.
415
- - Export note 64: Keep names aligned with file suffixes.
416
- - Export note 65: Keep names aligned with file suffixes.
417
- - Export note 66: Keep names aligned with file suffixes.
418
- - Export note 67: Keep names aligned with file suffixes.
419
- - Export note 68: Keep names aligned with file suffixes.
420
- - Export note 69: Keep names aligned with file suffixes.
421
- - Export note 70: Keep names aligned with file suffixes.
422
- - Export note 71: Keep names aligned with file suffixes.
423
- - Export note 72: Keep names aligned with file suffixes.
424
- - Export note 73: Keep names aligned with file suffixes.
425
- - Export note 74: Keep names aligned with file suffixes.
426
- - Export note 75: Keep names aligned with file suffixes.
427
- - Export note 76: Keep names aligned with file suffixes.
428
- - Export note 77: Keep names aligned with file suffixes.
429
- - Export note 78: Keep names aligned with file suffixes.
430
- - Export note 79: Keep names aligned with file suffixes.
431
- - Export note 80: Keep names aligned with file suffixes.
432
- - Export note 81: Keep names aligned with file suffixes.
433
- - Export note 82: Keep names aligned with file suffixes.
434
- - Export note 83: Keep names aligned with file suffixes.
435
- - Export note 84: Keep names aligned with file suffixes.
436
- - Export note 85: Keep names aligned with file suffixes.
437
- - Export note 86: Keep names aligned with file suffixes.
438
- - Export note 87: Keep names aligned with file suffixes.
439
- - Export note 88: Keep names aligned with file suffixes.
440
- - Export note 89: Keep names aligned with file suffixes.
441
- - Export note 90: Keep names aligned with file suffixes.
442
- - Export note 91: Keep names aligned with file suffixes.
443
- - Export note 92: Keep names aligned with file suffixes.
444
- - Export note 93: Keep names aligned with file suffixes.
445
- - Export note 94: Keep names aligned with file suffixes.
446
- - Export note 95: Keep names aligned with file suffixes.
447
- - Export note 96: Keep names aligned with file suffixes.
448
- - Export note 97: Keep names aligned with file suffixes.
449
- - Export note 98: Keep names aligned with file suffixes.
450
- - Export note 99: Keep names aligned with file suffixes.
451
- - Export note 100: Keep names aligned with file suffixes.
452
- - Export note 101: Keep names aligned with file suffixes.
453
- - Export note 102: Keep names aligned with file suffixes.
454
- - Export note 103: Keep names aligned with file suffixes.
455
- - Export note 104: Keep names aligned with file suffixes.
456
- - Export note 105: Keep names aligned with file suffixes.
457
- - Export note 106: Keep names aligned with file suffixes.
458
- - Export note 107: Keep names aligned with file suffixes.
459
- - Export note 108: Keep names aligned with file suffixes.
460
- - Export note 109: Keep names aligned with file suffixes.
461
- - Export note 110: Keep names aligned with file suffixes.
462
- - Export note 111: Keep names aligned with file suffixes.
463
- - Export note 112: Keep names aligned with file suffixes.
464
- - Export note 113: Keep names aligned with file suffixes.
465
- - Export note 114: Keep names aligned with file suffixes.
466
- - Export note 115: Keep names aligned with file suffixes.
467
- - Export note 116: Keep names aligned with file suffixes.
468
- - Export note 117: Keep names aligned with file suffixes.
469
- - Export note 118: Keep names aligned with file suffixes.
470
- - Export note 119: Keep names aligned with file suffixes.
471
- - Export note 120: Keep names aligned with file suffixes.
352
+ ## Export Notes
353
+ - Import from the root package (`fragment-ts`) instead of deep paths to avoid breakage across releases.
354
+ - Ensure `reflect-metadata` is imported once at app startup before any decorators are evaluated.
355
+ - File suffixes drive component discovery; keep names aligned with suffixes for consistent scanning.
356
+ - Use `FragmentError` (or subclasses) for consistent HTTP mapping and structured logging.
357
+ - Prefer `FragmentLogger` over `console.log` to honor `verbose` and log level settings.
358
+ - Frontend metadata relies on MobX. Ensure `mobx` is installed when frontend is enabled.
359
+ - Use `CommandRunner.run()` for programmatic CLI usage in jobs or scripts.
360
+ - Docs decorators (`@ApiTag`, `@ApiOperation`, etc.) only affect documentation output, not runtime behavior.
361
+ - Config values support `${ENV:default}` interpolation through `ConfigUtils`.
362
+ - TypeORM exports are available under `eloquent` for convenience.
472
363
 
473
364
  ## API Conventions
474
- - API convention 1: Keep decorator usage near the class or method definition.
475
- - API convention 2: Keep decorator usage near the class or method definition.
476
- - API convention 3: Keep decorator usage near the class or method definition.
477
- - API convention 4: Keep decorator usage near the class or method definition.
478
- - API convention 5: Keep decorator usage near the class or method definition.
479
- - API convention 6: Keep decorator usage near the class or method definition.
480
- - API convention 7: Keep decorator usage near the class or method definition.
481
- - API convention 8: Keep decorator usage near the class or method definition.
482
- - API convention 9: Keep decorator usage near the class or method definition.
483
- - API convention 10: Keep decorator usage near the class or method definition.
484
- - API convention 11: Keep decorator usage near the class or method definition.
485
- - API convention 12: Keep decorator usage near the class or method definition.
486
- - API convention 13: Keep decorator usage near the class or method definition.
487
- - API convention 14: Keep decorator usage near the class or method definition.
488
- - API convention 15: Keep decorator usage near the class or method definition.
489
- - API convention 16: Keep decorator usage near the class or method definition.
490
- - API convention 17: Keep decorator usage near the class or method definition.
491
- - API convention 18: Keep decorator usage near the class or method definition.
492
- - API convention 19: Keep decorator usage near the class or method definition.
493
- - API convention 20: Keep decorator usage near the class or method definition.
494
- - API convention 21: Keep decorator usage near the class or method definition.
495
- - API convention 22: Keep decorator usage near the class or method definition.
496
- - API convention 23: Keep decorator usage near the class or method definition.
497
- - API convention 24: Keep decorator usage near the class or method definition.
498
- - API convention 25: Keep decorator usage near the class or method definition.
499
- - API convention 26: Keep decorator usage near the class or method definition.
500
- - API convention 27: Keep decorator usage near the class or method definition.
501
- - API convention 28: Keep decorator usage near the class or method definition.
502
- - API convention 29: Keep decorator usage near the class or method definition.
503
- - API convention 30: Keep decorator usage near the class or method definition.
504
- - API convention 31: Keep decorator usage near the class or method definition.
505
- - API convention 32: Keep decorator usage near the class or method definition.
506
- - API convention 33: Keep decorator usage near the class or method definition.
507
- - API convention 34: Keep decorator usage near the class or method definition.
508
- - API convention 35: Keep decorator usage near the class or method definition.
509
- - API convention 36: Keep decorator usage near the class or method definition.
510
- - API convention 37: Keep decorator usage near the class or method definition.
511
- - API convention 38: Keep decorator usage near the class or method definition.
512
- - API convention 39: Keep decorator usage near the class or method definition.
513
- - API convention 40: Keep decorator usage near the class or method definition.
514
- - API convention 41: Keep decorator usage near the class or method definition.
515
- - API convention 42: Keep decorator usage near the class or method definition.
516
- - API convention 43: Keep decorator usage near the class or method definition.
517
- - API convention 44: Keep decorator usage near the class or method definition.
518
- - API convention 45: Keep decorator usage near the class or method definition.
519
- - API convention 46: Keep decorator usage near the class or method definition.
520
- - API convention 47: Keep decorator usage near the class or method definition.
521
- - API convention 48: Keep decorator usage near the class or method definition.
522
- - API convention 49: Keep decorator usage near the class or method definition.
523
- - API convention 50: Keep decorator usage near the class or method definition.
365
+ - Keep decorators adjacent to the class or method they configure.
366
+ - Prefer constructor injection for required dependencies and property injection for optional ones.
367
+ - Avoid manual `new` for DI-managed classes; let the container resolve them.
368
+ - Keep controllers thin and delegate to services for business logic.
369
+ - Use DTOs and validators (`class-validator`) for request payload validation.
370
+ - Use qualifiers when two providers share a name or token.
371
+ - Provide explicit `name` values in decorators for stable metadata and docs.
372
+ - Use `@State` for store fields and mutate them inside `@Action` methods.
373
+ - Treat `@Effect` methods as side-effect boundaries (fetching, subscriptions, timers).
374
+ - Use `@OnStartup` and `@OnShutdown` for app lifecycle, not constructors.
375
+ - Prefer `FragmentError` (or subclasses) for errors that reach the web layer.
376
+ - Keep file suffixes aligned with component types to keep scanning reliable.
524
377
 
525
378
  ## API Walkthrough Examples
526
379
  This section gives short, implementation-oriented examples for the most-used APIs.
package/DOCS.md CHANGED
@@ -332,188 +332,27 @@ const notifications = new NotificationManager();
332
332
  - Decorator: `@Effect(options)` is collected by MetadataStorage.
333
333
  - Decorator: `@Effects(options)` is collected by MetadataStorage.
334
334
  ## Extended Architecture Notes
335
- - Note 1: Keep plugin qualifiers stable across deployments.
336
- - Note 2: Keep plugin qualifiers stable across deployments.
337
- - Note 3: Keep plugin qualifiers stable across deployments.
338
- - Note 4: Keep plugin qualifiers stable across deployments.
339
- - Note 5: Keep plugin qualifiers stable across deployments.
340
- - Note 6: Keep plugin qualifiers stable across deployments.
341
- - Note 7: Keep plugin qualifiers stable across deployments.
342
- - Note 8: Keep plugin qualifiers stable across deployments.
343
- - Note 9: Keep plugin qualifiers stable across deployments.
344
- - Note 10: Keep plugin qualifiers stable across deployments.
345
- - Note 11: Keep plugin qualifiers stable across deployments.
346
- - Note 12: Keep plugin qualifiers stable across deployments.
347
- - Note 13: Keep plugin qualifiers stable across deployments.
348
- - Note 14: Keep plugin qualifiers stable across deployments.
349
- - Note 15: Keep plugin qualifiers stable across deployments.
350
- - Note 16: Keep plugin qualifiers stable across deployments.
351
- - Note 17: Keep plugin qualifiers stable across deployments.
352
- - Note 18: Keep plugin qualifiers stable across deployments.
353
- - Note 19: Keep plugin qualifiers stable across deployments.
354
- - Note 20: Keep plugin qualifiers stable across deployments.
355
- - Note 21: Keep plugin qualifiers stable across deployments.
356
- - Note 22: Keep plugin qualifiers stable across deployments.
357
- - Note 23: Keep plugin qualifiers stable across deployments.
358
- - Note 24: Keep plugin qualifiers stable across deployments.
359
- - Note 25: Keep plugin qualifiers stable across deployments.
360
- - Note 26: Keep plugin qualifiers stable across deployments.
361
- - Note 27: Keep plugin qualifiers stable across deployments.
362
- - Note 28: Keep plugin qualifiers stable across deployments.
363
- - Note 29: Keep plugin qualifiers stable across deployments.
364
- - Note 30: Keep plugin qualifiers stable across deployments.
365
- - Note 31: Keep plugin qualifiers stable across deployments.
366
- - Note 32: Keep plugin qualifiers stable across deployments.
367
- - Note 33: Keep plugin qualifiers stable across deployments.
368
- - Note 34: Keep plugin qualifiers stable across deployments.
369
- - Note 35: Keep plugin qualifiers stable across deployments.
370
- - Note 36: Keep plugin qualifiers stable across deployments.
371
- - Note 37: Keep plugin qualifiers stable across deployments.
372
- - Note 38: Keep plugin qualifiers stable across deployments.
373
- - Note 39: Keep plugin qualifiers stable across deployments.
374
- - Note 40: Keep plugin qualifiers stable across deployments.
375
- - Note 41: Keep plugin qualifiers stable across deployments.
376
- - Note 42: Keep plugin qualifiers stable across deployments.
377
- - Note 43: Keep plugin qualifiers stable across deployments.
378
- - Note 44: Keep plugin qualifiers stable across deployments.
379
- - Note 45: Keep plugin qualifiers stable across deployments.
380
- - Note 46: Keep plugin qualifiers stable across deployments.
381
- - Note 47: Keep plugin qualifiers stable across deployments.
382
- - Note 48: Keep plugin qualifiers stable across deployments.
383
- - Note 49: Keep plugin qualifiers stable across deployments.
384
- - Note 50: Keep plugin qualifiers stable across deployments.
385
- - Note 51: Keep plugin qualifiers stable across deployments.
386
- - Note 52: Keep plugin qualifiers stable across deployments.
387
- - Note 53: Keep plugin qualifiers stable across deployments.
388
- - Note 54: Keep plugin qualifiers stable across deployments.
389
- - Note 55: Keep plugin qualifiers stable across deployments.
390
- - Note 56: Keep plugin qualifiers stable across deployments.
391
- - Note 57: Keep plugin qualifiers stable across deployments.
392
- - Note 58: Keep plugin qualifiers stable across deployments.
393
- - Note 59: Keep plugin qualifiers stable across deployments.
394
- - Note 60: Keep plugin qualifiers stable across deployments.
395
- - Note 61: Keep plugin qualifiers stable across deployments.
396
- - Note 62: Keep plugin qualifiers stable across deployments.
397
- - Note 63: Keep plugin qualifiers stable across deployments.
398
- - Note 64: Keep plugin qualifiers stable across deployments.
399
- - Note 65: Keep plugin qualifiers stable across deployments.
400
- - Note 66: Keep plugin qualifiers stable across deployments.
401
- - Note 67: Keep plugin qualifiers stable across deployments.
402
- - Note 68: Keep plugin qualifiers stable across deployments.
403
- - Note 69: Keep plugin qualifiers stable across deployments.
404
- - Note 70: Keep plugin qualifiers stable across deployments.
405
- - Note 71: Keep plugin qualifiers stable across deployments.
406
- - Note 72: Keep plugin qualifiers stable across deployments.
407
- - Note 73: Keep plugin qualifiers stable across deployments.
408
- - Note 74: Keep plugin qualifiers stable across deployments.
409
- - Note 75: Keep plugin qualifiers stable across deployments.
410
- - Note 76: Keep plugin qualifiers stable across deployments.
411
- - Note 77: Keep plugin qualifiers stable across deployments.
412
- - Note 78: Keep plugin qualifiers stable across deployments.
413
- - Note 79: Keep plugin qualifiers stable across deployments.
414
- - Note 80: Keep plugin qualifiers stable across deployments.
415
- - Note 81: Use per-module docs to keep large APIs readable.
416
- - Note 82: Use per-module docs to keep large APIs readable.
417
- - Note 83: Use per-module docs to keep large APIs readable.
418
- - Note 84: Use per-module docs to keep large APIs readable.
419
- - Note 85: Use per-module docs to keep large APIs readable.
420
- - Note 86: Use per-module docs to keep large APIs readable.
421
- - Note 87: Use per-module docs to keep large APIs readable.
422
- - Note 88: Use per-module docs to keep large APIs readable.
423
- - Note 89: Use per-module docs to keep large APIs readable.
424
- - Note 90: Use per-module docs to keep large APIs readable.
425
- - Note 91: Use per-module docs to keep large APIs readable.
426
- - Note 92: Use per-module docs to keep large APIs readable.
427
- - Note 93: Use per-module docs to keep large APIs readable.
428
- - Note 94: Use per-module docs to keep large APIs readable.
429
- - Note 95: Use per-module docs to keep large APIs readable.
430
- - Note 96: Use per-module docs to keep large APIs readable.
431
- - Note 97: Use per-module docs to keep large APIs readable.
432
- - Note 98: Use per-module docs to keep large APIs readable.
433
- - Note 99: Use per-module docs to keep large APIs readable.
434
- - Note 100: Use per-module docs to keep large APIs readable.
435
- - Note 101: Use per-module docs to keep large APIs readable.
436
- - Note 102: Use per-module docs to keep large APIs readable.
437
- - Note 103: Use per-module docs to keep large APIs readable.
438
- - Note 104: Use per-module docs to keep large APIs readable.
439
- - Note 105: Use per-module docs to keep large APIs readable.
440
- - Note 106: Use per-module docs to keep large APIs readable.
441
- - Note 107: Use per-module docs to keep large APIs readable.
442
- - Note 108: Use per-module docs to keep large APIs readable.
443
- - Note 109: Use per-module docs to keep large APIs readable.
444
- - Note 110: Use per-module docs to keep large APIs readable.
445
- - Note 111: Use per-module docs to keep large APIs readable.
446
- - Note 112: Use per-module docs to keep large APIs readable.
447
- - Note 113: Use per-module docs to keep large APIs readable.
448
- - Note 114: Use per-module docs to keep large APIs readable.
449
- - Note 115: Use per-module docs to keep large APIs readable.
450
- - Note 116: Use per-module docs to keep large APIs readable.
451
- - Note 117: Use per-module docs to keep large APIs readable.
452
- - Note 118: Use per-module docs to keep large APIs readable.
453
- - Note 119: Use per-module docs to keep large APIs readable.
454
- - Note 120: Use per-module docs to keep large APIs readable.
455
- - Note 121: Use per-module docs to keep large APIs readable.
456
- - Note 122: Use per-module docs to keep large APIs readable.
457
- - Note 123: Use per-module docs to keep large APIs readable.
458
- - Note 124: Use per-module docs to keep large APIs readable.
459
- - Note 125: Use per-module docs to keep large APIs readable.
460
- - Note 126: Use per-module docs to keep large APIs readable.
461
- - Note 127: Use per-module docs to keep large APIs readable.
462
- - Note 128: Use per-module docs to keep large APIs readable.
463
- - Note 129: Use per-module docs to keep large APIs readable.
464
- - Note 130: Use per-module docs to keep large APIs readable.
465
- - Note 131: Use per-module docs to keep large APIs readable.
466
- - Note 132: Use per-module docs to keep large APIs readable.
467
- - Note 133: Use per-module docs to keep large APIs readable.
468
- - Note 134: Use per-module docs to keep large APIs readable.
469
- - Note 135: Use per-module docs to keep large APIs readable.
470
- - Note 136: Use per-module docs to keep large APIs readable.
471
- - Note 137: Use per-module docs to keep large APIs readable.
472
- - Note 138: Use per-module docs to keep large APIs readable.
473
- - Note 139: Use per-module docs to keep large APIs readable.
474
- - Note 140: Use per-module docs to keep large APIs readable.
335
+ - Keep plugin qualifiers stable across deployments to avoid misrouting plugin injection.
336
+ - Use `pluginAutoQualify` during development, but prefer explicit qualifiers in production.
337
+ - Enable `docs.perModule` for large codebases to keep docs navigable.
338
+ - Use `fragment.cache.json` in CI or production to speed up bootstrap.
339
+ - Avoid heavy side effects inside decorators; use lifecycle hooks instead.
340
+ - Keep file suffixes aligned with component types so scanners remain predictable.
341
+ - Use `FragmentLogger` for log consistency and `verbose` control.
342
+ - Configure `docs.path` to avoid collisions with app routes.
343
+ - Keep frontend templates and components in dedicated folders for discoverability.
344
+ - Prefer `@MailTemplate` + `templatesDir` for consistent mail rendering.
345
+ - Use `notifications.defaultChannels` to set a safe fallback behavior.
346
+ - Keep scheduled jobs idempotent to survive retries or overlaps.
475
347
 
476
348
  ## Additional Deep Dives
477
- - Deep dive 1: Review metadata flow when adding new decorators.
478
- - Deep dive 2: Review metadata flow when adding new decorators.
479
- - Deep dive 3: Review metadata flow when adding new decorators.
480
- - Deep dive 4: Review metadata flow when adding new decorators.
481
- - Deep dive 5: Review metadata flow when adding new decorators.
482
- - Deep dive 6: Review metadata flow when adding new decorators.
483
- - Deep dive 7: Review metadata flow when adding new decorators.
484
- - Deep dive 8: Review metadata flow when adding new decorators.
485
- - Deep dive 9: Review metadata flow when adding new decorators.
486
- - Deep dive 10: Review metadata flow when adding new decorators.
487
- - Deep dive 11: Review metadata flow when adding new decorators.
488
- - Deep dive 12: Review metadata flow when adding new decorators.
489
- - Deep dive 13: Review metadata flow when adding new decorators.
490
- - Deep dive 14: Review metadata flow when adding new decorators.
491
- - Deep dive 15: Review metadata flow when adding new decorators.
492
- - Deep dive 16: Review metadata flow when adding new decorators.
493
- - Deep dive 17: Review metadata flow when adding new decorators.
494
- - Deep dive 18: Review metadata flow when adding new decorators.
495
- - Deep dive 19: Review metadata flow when adding new decorators.
496
- - Deep dive 20: Review metadata flow when adding new decorators.
497
- - Deep dive 21: Review metadata flow when adding new decorators.
498
- - Deep dive 22: Review metadata flow when adding new decorators.
499
- - Deep dive 23: Review metadata flow when adding new decorators.
500
- - Deep dive 24: Review metadata flow when adding new decorators.
501
- - Deep dive 25: Review metadata flow when adding new decorators.
502
- - Deep dive 26: Review metadata flow when adding new decorators.
503
- - Deep dive 27: Review metadata flow when adding new decorators.
504
- - Deep dive 28: Review metadata flow when adding new decorators.
505
- - Deep dive 29: Review metadata flow when adding new decorators.
506
- - Deep dive 30: Review metadata flow when adding new decorators.
507
- - Deep dive 31: Review metadata flow when adding new decorators.
508
- - Deep dive 32: Review metadata flow when adding new decorators.
509
- - Deep dive 33: Review metadata flow when adding new decorators.
510
- - Deep dive 34: Review metadata flow when adding new decorators.
511
- - Deep dive 35: Review metadata flow when adding new decorators.
512
- - Deep dive 36: Review metadata flow when adding new decorators.
513
- - Deep dive 37: Review metadata flow when adding new decorators.
514
- - Deep dive 38: Review metadata flow when adding new decorators.
515
- - Deep dive 39: Review metadata flow when adding new decorators.
516
- - Deep dive 40: Review metadata flow when adding new decorators.
349
+ - Metadata flow and how `MetadataStorage` drives scanning and docs output.
350
+ - Component scanning patterns and how suffixes impact discovery.
351
+ - Lifecycle sequencing across `@PostConstruct`, `@OnStartup`, and shutdown hooks.
352
+ - Plugin load order and qualifier resolution during injection.
353
+ - Docs generation pipeline (metadata -> spec -> HTML output).
354
+ - Frontend registry composition graph and store resolution.
355
+ - Jobs scheduler lifecycle and cron execution behavior.
517
356
 
518
357
  ## Dependency Injection Deep Dive
519
358
  Fragment uses decorator metadata to register injectable classes and to resolve dependencies at runtime.
@@ -1,7 +1,7 @@
1
1
  import { Express } from "express";
2
- import { ConsoleLogger } from "../utils/ConsoleLogger";
3
- import { MetadataStorage } from "../../../core/metadata/metadata-storage";
4
2
  import { DIContainer } from "../../../core/container/di-container";
3
+ import { MetadataStorage } from "../../../core/metadata/metadata-storage";
4
+ import { ConsoleLogger } from "../utils/ConsoleLogger";
5
5
  export declare class ApplicationBootstrapper {
6
6
  private app;
7
7
  private logger;
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationBootstrapper.d.ts","sourceRoot":"","sources":["../../../../src/platform/web/bootstrap/ApplicationBootstrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMlC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAOnE,qBAAa,uBAAuB;IAMhC,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,SAAS;IARnB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,YAAY,CAA8B;gBAGxC,GAAG,EAAE,OAAO,EACZ,MAAM,uBAAgB,EACtB,eAAe,kBAAgC,EAC/C,SAAS,cAA4B;IAGzC,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YAwC/B,iBAAiB;IAU/B,OAAO,CAAC,eAAe;YAIT,cAAc;IAK5B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,WAAW;YAKL,iBAAiB;IAI/B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,kBAAkB;YAiEZ,WAAW;IAWzB,OAAO,CAAC,iBAAiB;YAIX,eAAe;YAIf,gBAAgB;IAI9B,OAAO,CAAC,iBAAiB;YA6BX,iBAAiB;IAmC/B,OAAO,CAAC,qBAAqB;YAaf,QAAQ;YAaR,UAAU;CAOzB"}
1
+ {"version":3,"file":"ApplicationBootstrapper.d.ts","sourceRoot":"","sources":["../../../../src/platform/web/bootstrap/ApplicationBootstrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAO1E,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAKvD,qBAAa,uBAAuB;IAMhC,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,SAAS;IARnB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,YAAY,CAA8B;gBAGxC,GAAG,EAAE,OAAO,EACZ,MAAM,uBAAgB,EACtB,eAAe,kBAAgC,EAC/C,SAAS,cAA4B;IAGzC,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YA2C/B,iBAAiB;IAU/B,OAAO,CAAC,eAAe;YAIT,cAAc;IAK5B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,WAAW;YAKL,iBAAiB;IAI/B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,kBAAkB;YAiEZ,WAAW;IAWzB,OAAO,CAAC,iBAAiB;YAIX,eAAe;YAIf,gBAAgB;IAI9B,OAAO,CAAC,iBAAiB;YA6BX,iBAAiB;IAmC/B,OAAO,CAAC,qBAAqB;YAaf,QAAQ;YAaR,UAAU;CAOzB"}
@@ -1,18 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ApplicationBootstrapper = void 0;
4
- const typeorm_module_1 = require("../../../integrations/typeorm/typeorm-module");
5
- const ComponentScanner_1 = require("./ComponentScanner");
6
- const ComponentRegistrar_1 = require("./ComponentRegistrar");
7
- const RouteRegistrar_1 = require("./RouteRegistrar");
8
- const ConsoleLogger_1 = require("../utils/ConsoleLogger");
4
+ const di_container_1 = require("../../../core/container/di-container");
9
5
  const metadata_keys_1 = require("../../../core/metadata/metadata-keys");
10
6
  const metadata_storage_1 = require("../../../core/metadata/metadata-storage");
11
- const di_container_1 = require("../../../core/container/di-container");
12
- const plugin_registry_1 = require("../../../plugins/plugin-registry");
13
- const job_scheduler_1 = require("../../../integrations/jobs/job-scheduler");
14
7
  const doc_generator_1 = require("../../../integrations/docs/doc-generator");
8
+ const frontend_1 = require("../../../integrations/frontend");
9
+ const job_scheduler_1 = require("../../../integrations/jobs/job-scheduler");
10
+ const typeorm_module_1 = require("../../../integrations/typeorm/typeorm-module");
11
+ const plugin_registry_1 = require("../../../plugins/plugin-registry");
15
12
  const config_utils_1 = require("../../../shared/config.utils");
13
+ const ConsoleLogger_1 = require("../utils/ConsoleLogger");
14
+ const ComponentRegistrar_1 = require("./ComponentRegistrar");
15
+ const ComponentScanner_1 = require("./ComponentScanner");
16
+ const RouteRegistrar_1 = require("./RouteRegistrar");
16
17
  class ApplicationBootstrapper {
17
18
  constructor(app, logger = ConsoleLogger_1.ConsoleLogger, metadataStorage = metadata_storage_1.MetadataStorage.getInstance(), container = di_container_1.DIContainer.getInstance()) {
18
19
  this.app = app;
@@ -41,6 +42,8 @@ class ApplicationBootstrapper {
41
42
  await this.initializePlugins();
42
43
  // Step 7: Register routes
43
44
  this.registerRoutes();
45
+ // Step 8: Load Frontend
46
+ frontend_1.FrontendRegistry.buildRegistry();
44
47
  // Step 8: Register docs route (if enabled)
45
48
  this.registerDocsRoutes();
46
49
  // Step 9: Run startup hooks
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationBootstrapper.js","sourceRoot":"","sources":["../../../../src/platform/web/bootstrap/ApplicationBootstrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationBootstrapper.js","sourceRoot":"","sources":["../../../../src/platform/web/bootstrap/ApplicationBootstrapper.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,12 @@
2
2
  "structure": {
3
3
  "type": "module"
4
4
  },
5
+ "docs": {
6
+ "path": "/docs",
7
+ "enabled": true,
8
+ "perModule": true,
9
+ "perModuleRoutes": true
10
+ },
5
11
  "database": {
6
12
  "type": "mysql",
7
13
  "host": "${DATABASE_HOST}",
@@ -52,5 +58,12 @@
52
58
  ]
53
59
  }
54
60
  }
55
- }
56
- }
61
+ },
62
+ "plugins": [
63
+ "plugin",
64
+ {
65
+ "name": "firebase-admin",
66
+ "enabled": false
67
+ }
68
+ ]
69
+ }