| ⇢ | A | ProductBundleOptionUpdateProcessor added | |
| ⇢ | A | ProductBundleSelectionPriceUpdateProcessor added | |
| ⇢ | A | ProductBundleSelectionUpdateProcessor added | |
| ⇢ | A | BundleOptionUpdateObserver added | |
| ⇢ | A | BundleSelectionPriceUpdateObserver added | |
| ⇢ | A | BundleSelectionUpdateObserver added | |
| ⇢ | A | BundleOptionRepository added | |
| ⇢ | A | BundleOptionValueRepository added | |
| ⇢ | A | BundleSelectionPriceRepository added | |
| ⇢ | A | BundleSelectionRepository added | |
| ⋮ | view more | ||
| A | ↘ | C | ProductBundleProcessor got worse |
| ⇢ | B | BundleOptionValueObserver::process() added | |
| ⇢ | B | BundleSelectionObserver::prepareAttributes() added | |
| ⇢ | B | BundleSelectionPriceObserver::prepareAttributes() added | |
| ⇢ | B | BundleOptionObserver::prepareAttributes() added | |
| ⇢ | A | BundleOptionObserver::process() added | |
| ⇢ | A | BundleOptionValueObserver::prepareAttributes() added | |
| ⇢ | A | BundleSelectionPriceUpdateObserver::initializeBund... added | |
| ⇢ | A | BundleSelectionUpdateObserver::initializeBundleSel... added | |
| ⇢ | A | ProductBundleOptionUpdateProcessor::getStatements(... added | |
| ⇢ | A | ProductBundleOptionUpdateProcessor::execute() added | |
| ⋮ | view more | ||
| B | ↗ | A | BundleOptionObserver::handle() improved |
| B | ↗ | A | BundleOptionValueObserver::handle() improved |
| B | ↗ | A | BundleSelectionPriceObserver::handle() improved |
| A | ↛ | ProductBundleSelectionPriceCreateProcessor::execut... removed | |
| A | ↛ | ColumnKeys::__construct() removed | |
| A | ↛ | ColumnKeys::__clone() removed | |
| A | ↛ | BundleOptionObserver::mapSkuToEntityId() removed | |