- injector
- singleness
- injection point
- injection rule
- scope *
- softness *
- factory *
- name
- creation hooks *
- destruction hooks *
- guards *
- optional? *
- context builder
- root view *
- maps *
- private / public *
- sealed *
- using config *
- external dependencies *
- dev / test / release mode *
- mediator map
- view/s to target *
- mediators to create
- guards *
- hooks *
- auto-remove
- manual
- view map
- view/s to target *
- inject into view? *
- fast-inject? *
- guards *
- hooks *
- command map
- event type
- command class/es
- command flow/s *
- guards *
- one shot?
- params? *
- manual execution
- async / detain / release
--- BETA MINIMUM ---
- type matcher
- class/es *
- interface/s *
- excluded class/es *
- excluded interface/s *
- subclasses *
- superclasses *
- and / or / not / nand *
- rule set manager
- always *
- when *
- until *
- restore *
- whether to validate / predict problems *
- context relationship manager (modules)
- inherit from *
- share with *
- pull / push *
- publish *
- reference *
- communication *
- command flow
- entry *
- entry hooks *
- command *
- outcome events *
- where next... *
- step fails *
- overall fail *
- guards *
- retry? *
- timeout? *
- environment properties / loader
- target file *
- format *
- behaviour on error *
- validation *
- parser *
- location for stored props *
- whether to map/inject after loading *
- inspector gadget
- all injections
- object graph
- event history
- command history
- mapping relationships
- unconventional mappings
- errors over runtime
- counts - listeners, actions, dependencies
- logging
- test dsl
- view manager
- view roots