$37 GRAYBYTE WORDPRESS FILE MANAGER $96

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.15.130 | ADMIN IP 216.73.217.88
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/home/bravetechrwanda/hpgt.org/.log-unix/wp-includes/wp-content/plugins/

HOME
Current File : /home/bravetechrwanda/hpgt.org/.log-unix/wp-includes/wp-content/plugins//shapes.php
<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor shapes.
 *
 * Elementor shapes handler class is responsible for setting up the supported
 * shape dividers.
 *
 * @since 1.3.0
 */
class Shapes {

	/**
	 * The exclude filter.
	 */
	const FILTER_EXCLUDE = 'exclude';

	/**
	 * The include filter.
	 */
	const FILTER_INCLUDE = 'include';

	/**
	 * Shapes.
	 *
	 * Holds the list of supported shapes.
	 *
	 * @since 1.3.0
	 * @access private
	 * @static
	 *
	 * @var array A list of supported shapes.
	 */
	private static $shapes;

	/**
	 * Get shapes.
	 *
	 * Retrieve a shape from the lists of supported shapes. If no shape specified
	 * it will return all the supported shapes.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param array $shape Optional. Specific shape. Default is `null`.
	 *
	 * @return array The specified shape or a list of all the supported shapes.
	 */
	public static function get_shapes( $shape = null ) {
		if ( null === self::$shapes ) {
			self::init_shapes();
		}

		if ( $shape ) {
			return isset( self::$shapes[ $shape ] ) ? self::$shapes[ $shape ] : null;
		}

		return self::$shapes;
	}

	/**
	 * Filter shapes.
	 *
	 * Retrieve shapes filtered by a specific condition, from the list of
	 * supported shapes.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param string $by     Specific condition to filter by.
	 * @param string $filter Optional. Comparison condition to filter by.
	 *                       Default is `include`.
	 *
	 * @return array A list of filtered shapes.
	 */
	public static function filter_shapes( $by, $filter = self::FILTER_INCLUDE ) {
		return array_filter(
			self::get_shapes(), function( $shape ) use ( $by, $filter ) {
				return self::FILTER_INCLUDE === $filter xor empty( $shape[ $by ] );
			}
		);
	}

	/**
	 * Get shape path.
	 *
	 * For a given shape, retrieve the file path.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param string $shape       The shape.
	 * @param bool   $is_negative Optional. Whether the file name is negative or
	 *                            not. Default is `false`.
	 *
	 * @return string Shape file path.
	 */
	public static function get_shape_path( $shape, $is_negative = false ) {
		if ( ! isset( self::$shapes[ $shape ] ) ) {
			return '';
		}

		if ( isset( self::$shapes[ $shape ]['path'] ) ) {
			$path = self::$shapes[ $shape ]['path'];
			return ( $is_negative ) ? str_replace( '.svg', '-negative.svg', $path ) : $path;
		}

		$file_name = $shape;

		if ( $is_negative ) {
			$file_name .= '-negative';
		}

		return ELEMENTOR_PATH . 'assets/shapes/' . $file_name . '.svg';
	}

	/**
	 * Init shapes.
	 *
	 * Set the supported shapes.
	 *
	 * @since 1.3.0
	 * @access private
	 * @static
	 */
	private static function init_shapes() {
		$native_shapes = [
			'mountains' => [
				'title' => esc_html_x( 'Mountains', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/mountains.svg',
				'has_flip' => true,
			],
			'drops' => [
				'title' => esc_html_x( 'Drops', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/drops.svg',
				'has_negative' => true,
				'has_flip' => true,
				'height_only' => true,
			],
			'clouds' => [
				'title' => esc_html_x( 'Clouds', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/clouds.svg',
				'has_negative' => true,
				'has_flip' => true,
				'height_only' => true,
			],
			'zigzag' => [
				'title' => esc_html_x( 'Zigzag', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/zigzag.svg',
			],
			'pyramids' => [
				'title' => esc_html_x( 'Pyramids', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/pyramids.svg',
				'has_negative' => true,
				'has_flip' => true,
			],
			'triangle' => [
				'title' => esc_html_x( 'Triangle', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/triangle.svg',
				'has_negative' => true,
			],
			'triangle-asymmetrical' => [
				'title' => esc_html_x( 'Triangle Asymmetrical', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/triangle-asymmetrical.svg',
				'has_negative' => true,
				'has_flip' => true,
			],
			'tilt' => [
				'title' => esc_html_x( 'Tilt', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/tilt.svg',
				'has_flip' => true,
				'height_only' => true,
			],
			'opacity-tilt' => [
				'title' => esc_html_x( 'Tilt Opacity', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/opacity-tilt.svg',
				'has_flip' => true,
			],
			'opacity-fan' => [
				'title' => esc_html_x( 'Fan Opacity', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/opacity-fan.svg',
			],
			'curve' => [
				'title' => esc_html_x( 'Curve', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/curve.svg',
				'has_negative' => true,
			],
			'curve-asymmetrical' => [
				'title' => esc_html_x( 'Curve Asymmetrical', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/curve-asymmetrical.svg',
				'has_negative' => true,
				'has_flip' => true,
			],
			'waves' => [
				'title' => esc_html_x( 'Waves', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/waves.svg',
				'has_negative' => true,
				'has_flip' => true,
			],
			'wave-brush' => [
				'title' => esc_html_x( 'Waves Brush', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/wave-brush.svg',
				'has_flip' => true,
			],
			'waves-pattern' => [
				'title' => esc_html_x( 'Waves Pattern', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/waves-pattern.svg',
				'has_flip' => true,
			],
			'book' => [
				'title' => esc_html_x( 'Book', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/book.svg',
				'has_negative' => true,
			],
			'split' => [
				'title' => esc_html_x( 'Split', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/split.svg',
				'has_negative' => true,
			],
			'arrow' => [
				'title' => esc_html_x( 'Arrow', 'Shapes', 'elementor' ),
				'image' => ELEMENTOR_ASSETS_URL . 'shapes/arrow.svg',
				'has_negative' => true,
			],
		];

		self::$shapes = array_merge( $native_shapes, self::get_additional_shapes() );
	}

	/**
	 * Get Additional Shapes
	 *
	 * Used to add custom shapes to elementor.
	 *
	 * @since 2.5.0
	 *
	 * @return array
	 */
	private static function get_additional_shapes() {
		static $additional_shapes = null;

		if ( null !== $additional_shapes ) {
			return $additional_shapes;
		}

		$additional_shapes = [];

		/**
		 * Additional shapes.
		 *
		 * Filters the shapes used by Elementor to add additional shapes.
		 *
		 * @since 2.0.1
		 *
		 * @param array $additional_shapes Additional Elementor shapes.
		 */
		$additional_shapes = apply_filters( 'elementor/shapes/additional_shapes', $additional_shapes );

		// BC for addons that add additional shapes the old way using `url` instead of `image`.
		foreach ( $additional_shapes as $shape_name => $shape_settings ) {
			if ( ! isset( $shape_settings['image'] ) && isset( $shape_settings['url'] ) ) {
				$additional_shapes[ $shape_name ]['image'] = $shape_settings['url'];
			}
		}

		return $additional_shapes;
	}

	/**
	 * Get Additional Shapes For Config
	 *
	 * Used to set additional shape paths for editor
	 *
	 * @since 2.5.0
	 *
	 * @return array|bool
	 */
	public static function get_additional_shapes_for_config() {
		$additional_shapes = self::get_additional_shapes();
		if ( empty( $additional_shapes ) ) {
			return false;
		}

		$additional_shapes_config = [];
		foreach ( $additional_shapes as $shape_name => $shape_settings ) {
			if ( ! isset( $shape_settings['url'] ) ) {
				continue;
			}
			$additional_shapes_config[ $shape_name ] = $shape_settings['url'];
		}

		if ( empty( $additional_shapes_config ) ) {
			return false;
		}

		return $additional_shapes_config;
	}
}

Current_dir [ WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
15 May 2026 3.08 AM
bravetechrwanda / bravetechrwanda
0755
.index-.wp-vendor
--
7 May 2026 7.38 AM
bravetechrwanda / bravetechrwanda
0755
elementor
--
15 May 2026 10.49 AM
bravetechrwanda / bravetechrwanda
0755
elementskit-lite
--
15 May 2026 1.49 AM
bravetechrwanda / bravetechrwanda
0755
litespeed-cache
--
15 May 2026 12.16 PM
bravetechrwanda / bravetechrwanda
0755
maintenance
--
16 May 2026 5.20 AM
bravetechrwanda / bravetechrwanda
0755
royal-elementor-addons
--
7 May 2026 7.42 AM
bravetechrwanda / bravetechrwanda
0755
unlimited-elements-for-elementor
--
7 May 2026 1.30 AM
bravetechrwanda / bravetechrwanda
0755
wk
--
15 May 2026 9.22 AM
bravetechrwanda / bravetechrwanda
0755
wp-site
--
15 May 2026 3.51 AM
bravetechrwanda / bravetechrwanda
0755
wpr-addons-pro
--
7 May 2026 7.44 AM
bravetechrwanda / bravetechrwanda
0755
-20260507062007.hcflag
0.029 KB
30 Mar 2026 3.30 AM
bravetechrwanda / bravetechrwanda
0644
.hcflag
0.029 KB
30 Mar 2026 3.30 AM
bravetechrwanda / bravetechrwanda
0644
.litespeed_flag
0.29 KB
23 Apr 2026 1.31 AM
bravetechrwanda / bravetechrwanda
0644
admin-20260509071556.php
117.099 KB
28 Apr 2026 9.17 AM
bravetechrwanda / bravetechrwanda
0644
admin.php
117.099 KB
28 Apr 2026 9.17 AM
bravetechrwanda / bravetechrwanda
0644
after.php
0.457 KB
23 Apr 2023 3.22 PM
bravetechrwanda / bravetechrwanda
0644
api-20260512005022.php
0.788 KB
3 Feb 2025 4.10 PM
bravetechrwanda / bravetechrwanda
0644
api-20260514080028.php
0.788 KB
3 Feb 2025 4.10 PM
bravetechrwanda / bravetechrwanda
0644
api.php
4.227 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
code-20260514012711.php
1.99 KB
23 Apr 2023 3.37 PM
bravetechrwanda / bravetechrwanda
0644
code.php
1.99 KB
23 Apr 2023 3.37 PM
bravetechrwanda / bravetechrwanda
0644
compatibility.php
10.958 KB
17 Mar 2025 5.28 PM
bravetechrwanda / bravetechrwanda
0644
controller.php
11.765 KB
21 Oct 2025 4.51 PM
bravetechrwanda / bravetechrwanda
0644
editor.min.css
0.114 KB
10 Dec 2024 7.19 PM
bravetechrwanda / bravetechrwanda
0644
elements.php
10.885 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
error_log
2.125 KB
13 May 2026 11.12 PM
bravetechrwanda / bravetechrwanda
0644
functions.php
53.095 KB
2 Apr 2026 4.40 PM
bravetechrwanda / bravetechrwanda
0644
index-20260510012733.php
6.525 KB
30 Mar 2026 6.19 AM
bravetechrwanda / bravetechrwanda
0644
index.php
6.525 KB
30 Mar 2026 6.19 AM
bravetechrwanda / bravetechrwanda
0644
maintenance.php
20.99 KB
2 Apr 2026 4.40 PM
bravetechrwanda / bravetechrwanda
0644
module.php
5.2 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
mysql-data.sql
1.89 MB
24 Apr 2026 1.15 PM
bravetechrwanda / bravetechrwanda
0644
plugin-20260509094305.php
16.49 KB
3 Mar 2026 7.49 PM
bravetechrwanda / bravetechrwanda
0644
plugin.php
16.49 KB
3 Mar 2026 7.49 PM
bravetechrwanda / bravetechrwanda
0644
pointers.js
0.837 KB
6 May 2022 4.33 PM
bravetechrwanda / bravetechrwanda
0644
preferences.php
2.865 KB
25 Aug 2024 5.59 PM
bravetechrwanda / bravetechrwanda
0644
presets.php
1.665 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
section.php
39.313 KB
26 Jan 2026 5.46 PM
bravetechrwanda / bravetechrwanda
0644
shapes.php
7.812 KB
5 Aug 2025 6.00 PM
bravetechrwanda / bravetechrwanda
0644
tools.php
15.791 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
tracker-20260510134006.php
16.999 KB
10 Nov 2025 4.25 PM
bravetechrwanda / bravetechrwanda
0644
tracker.php
16.999 KB
10 Nov 2025 4.25 PM
bravetechrwanda / bravetechrwanda
0644
uninstall.php
0.161 KB
25 Sep 2019 9.16 AM
bravetechrwanda / bravetechrwanda
0644
utils-20260511153057.php
24.355 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
utils-20260515233449.php
24.355 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
utils.php
24.355 KB
30 Mar 2026 1.49 PM
bravetechrwanda / bravetechrwanda
0644
validations.php
1.624 KB
23 Apr 2023 3.22 PM
bravetechrwanda / bravetechrwanda
0644
view.php
0.707 KB
23 Apr 2023 3.22 PM
bravetechrwanda / bravetechrwanda
0644
wp-content.zip
99.86 MB
23 Apr 2026 6.09 AM
bravetechrwanda / bravetechrwanda
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF Static GIF