protected function resolveTagsFor(string $preferenceKey) : array
	{
		if (! is_null($this->products)) {
			return $this->pullTagsFromProducts();
		}

		$preferences = $this->resolveUserPreferences();

		$tags = PreferencesParser::parse($preferences)->all($this->keys);

		return isset($tags[$preferenceKey]) ? $tags[$preferenceKey] : [];
	}