PluginProbe
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder / 2.13.0
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder v2.13.0
2.13.0 2.13.1 2.12.0 2.11.1 2.11.0 2.10.0 2.9.0 2.7.4 2.7.5 2.7.6 2.7.7 2.8.0 2.8.1 2.9.1 trunk 1.0 1.0-beta1 1.0-beta2 1.0-beta3 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 All 80 releases
← All changes | includes/controls/text-stroke.php +57 -0 2.7.62.13.0 View file →
@@ -1,0 +1,57 @@
1 +<?php
2 +namespace ABlocks\Controls;
3 +
4 +if ( ! defined( 'ABSPATH' ) ) {
5 + exit;
6 +}
7 +
8 +use ABlocks\Classes\ControlBaseAbstract;
9 +use ABlocks\Controls\Color;
10 +
11 +class TextStroke extends ControlBaseAbstract {
12 + public static function get_attribute_default_value( $is_responsive = false ) {
13 + if ( $is_responsive ) {
14 + return array(
15 + 'strokeWidth' => '',
16 + 'strokeWidthTablet' => '',
17 + 'strokeWidthMobile' => '',
18 + 'strokeWidthUnit' => 'px',
19 + 'strokeWidthUnitTablet' => 'px',
20 + 'strokeWidthUnitMobile' => 'px',
21 + 'stroke' => '',
22 + );
23 + }
24 + return array(
25 + 'strokeWidth' => '',
26 + 'strokeWidthUnit' => 'px',
27 + 'stroke' => '',
28 + );
29 + }
30 +
31 + public static function get_attribute( $attributeName, $isResponsive = false ) {
32 + return [
33 + $attributeName => [
34 + 'type' => 'object',
35 + 'default' => self::get_attribute_default_value( $isResponsive ),
36 + ]
37 + ];
38 + }
39 +
40 + public static function get_css( $attribute_value, $property = '', $device = '' ) {
41 + if ( empty( $attribute_value ) ) {
42 + return [];
43 + }
44 + $default_attar_value = self::get_attribute_default_value( (bool) $device );
45 + $value = wp_parse_args( $attribute_value, $default_attar_value );
46 + $css = [];
47 +
48 + if ( '' !== $value[ 'strokeWidth' . $device ] ) {
49 + $css['-webkit-text-stroke-width'] = $value[ 'strokeWidth' . $device ] . $value[ 'strokeWidthUnit' . $device ];
50 + $css['-webkit-text-stroke-color'] = Color::get_css( '' !== $value['stroke'] ? $value['stroke'] : '#000' );
51 + }
52 +
53 + return $css;
54 + }
55 +
56 +
57 +}