protected function _getFilteredUniqueDependencies($mimeType) { if ($mimeType == 'text/javascript') { return array(); } if ($mimeType == 'text/javascript; defer') { $ret = parent::_getFilteredUniqueDependencies('text/javascript'); foreach (parent::_getFilteredUniqueDependencies('text/javascript; defer') as $i) { if (!in_array($i, $ret, true)) { $ret[] = $i; } } } else { $ret = parent::_getFilteredUniqueDependencies($mimeType); } $loadedDeps = array(); foreach ($this->_getFrontendPackages() as $package) { if ($mimeType == 'text/javascript; defer') { $loadedDeps = array_merge($loadedDeps, $package->_getFilteredUniqueDependencies('text/javascript')); } $loadedDeps = array_merge($loadedDeps, $package->_getFilteredUniqueDependencies($mimeType)); } foreach ($ret as $k => $i) { if (in_array($i, $loadedDeps, true)) { unset($ret[$k]); } } $ret = array_values($ret); return $ret; }