components[$id] = $instance; } /** * @since 2.3.0 * @access public * @return Module[] */ public function getComponents() { return $this->components; } /** * Get module component. * * Retrieve the module component. * * @since 1.7.0 * @access public * * @param string $id Component ID. * * @return mixed An instance of the component, or `false` if the component * doesn't exist. */ public function getComponent($id) { if (isset($this->components[$id])) { return $this->components[$id]; } return false; } /** * Get assets url. * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $file_extension * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * * @return string */ final protected function getAssetsUrl($file_name, $file_extension, $relative_url = null, $add_min_suffix = 'default') { static $is_test_mode = null; if (null === $is_test_mode) { $is_test_mode = _PS_MODE_DEV_ || defined('ELEMENTOR_TESTS') && ELEMENTOR_TESTS; } if (!$relative_url) { $relative_url = $this->getAssetsRelativeUrl() . $file_extension . '/'; } $url = _CE_URL_ . $relative_url . $file_name; if ('default' === $add_min_suffix) { $add_min_suffix = !$is_test_mode; } if ($add_min_suffix) { $url .= '.min'; } return $url . '.' . $file_extension; } /** * Get js assets url * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * * @return string */ final protected function getJsAssetsUrl($file_name, $relative_url = null, $add_min_suffix = 'default') { return $this->getAssetsUrl($file_name, 'js', $relative_url, $add_min_suffix); } /** * Get css assets url * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * @param bool $add_direction_suffix Optional. Default is `false` * * @return string */ final protected function getCssAssetsUrl($file_name, $relative_url = null, $add_min_suffix = 'default', $add_direction_suffix = false) { static $direction_suffix = null; if (!$direction_suffix) { $direction_suffix = is_rtl() ? '-rtl' : ''; } if ($add_direction_suffix) { $file_name .= $direction_suffix; } return $this->getAssetsUrl($file_name, 'css', $relative_url, $add_min_suffix); } /** * Get assets relative url * * @since 2.3.0 * @access protected * * @return string */ protected function getAssetsRelativeUrl() { return 'views/'; } }