PluginProbe
UiCore Elements – Free widgets and templates for Elementor / 1.3.18
UiCore Elements – Free widgets and templates for Elementor v1.3.18
1.3.18 1.3.17 1.3.16 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.2.0 1.2.1 1.2.2 1.2.3 All 42 releases
← All changes | includes/class-assets.php +137 -42 1.0.13 → 1.3.18 View file →
@@ -1,19 +1,23 @@
1 1 <?php
2 +
2 3 namespace UiCoreElements;
4 +
3 5 use Elementor\Plugin;
4 6
5 7 /**
6 8 * Scripts and Styles Class
7 9 */
8 -class Assets {
10 +class Assets
11 +{
9 12
10 - function __construct() {
11 - if ( is_admin() ) {
12 - add_action( 'admin_enqueue_scripts', [ $this, 'register' ], 5 );
13 - add_action( 'elementor/editor/after_enqueue_scripts', [ $this, 'enqueue' ], 5 );
13 + function __construct()
14 + {
15 + if (is_admin()) {
16 + add_action('admin_enqueue_scripts', [$this, 'register'], 5);
17 + add_action('elementor/editor/after_enqueue_scripts', [$this, 'enqueue'], 5);
14 18 } else {
15 - add_action( 'wp_enqueue_scripts', [ $this, 'register' ], 5 );
19 + add_action('wp_enqueue_scripts', [$this, 'register'], 5);
16 20 }
17 21 }
18 22
19 23 /**
@@ -20,11 +24,12 @@
20 24 * Register our app scripts and styles
21 25 *
22 26 * @return void
23 27 */
24 - public function register() {
25 - $this->register_scripts( $this->get_scripts() );
26 - $this->register_styles( $this->get_styles() );
28 + public function register()
29 + {
30 + $this->register_scripts($this->get_scripts());
31 + $this->register_styles($this->get_styles());
27 32 }
28 33
29 34 /**
30 35 * Enqueue our app scripts directly in the Elementor editor
@@ -30,11 +35,12 @@
30 35 * Enqueue our app scripts directly in the Elementor editor
31 36 *
32 37 * @return void
33 38 */
34 - public function enqueue() {
35 - if ( Plugin::instance()->editor->is_edit_mode() ) {
36 - wp_enqueue_script('ui-nested-elements', UICORE_ELEMENTS_ASSETS . '/js/utils/nested-elements.js', [], UICORE_ELEMENTS_VERSION, true);
39 + public function enqueue()
40 + {
41 + if (Plugin::instance()->editor->is_edit_mode()) {
42 + wp_enqueue_script('ui-nested-elements', UICORE_ELEMENTS_ASSETS . '/js/components/nested-elements.js', ['nested-elements', 'elementor-editor', 'elementor-common'], UICORE_ELEMENTS_VERSION, true);
37 43 }
38 44 }
39 45
40 46 /**
@@ -43,15 +49,16 @@
43 49 * @param array $scripts
44 50 *
45 51 * @return void
46 52 */
47 - private function register_scripts( $scripts ) {
48 - foreach ( $scripts as $handle => $script ) {
49 - $deps = isset( $script['deps'] ) ? $script['deps'] : false;
50 - $in_footer = isset( $script['in_footer'] ) ? $script['in_footer'] : false;
51 - $version = isset( $script['version'] ) ? $script['version'] : UICORE_ELEMENTS_VERSION;
53 + private function register_scripts($scripts)
54 + {
55 + foreach ($scripts as $handle => $script) {
56 + $deps = isset($script['deps']) ? $script['deps'] : false;
57 + $in_footer = isset($script['in_footer']) ? $script['in_footer'] : false;
58 + $version = isset($script['version']) ? $script['version'] : UICORE_ELEMENTS_VERSION;
52 59
53 - wp_register_script( $handle, $script['src'], $deps, $version, $in_footer );
60 + wp_register_script($handle, $script['src'], $deps, $version, $in_footer);
54 61 }
55 62 }
56 63
57 64 /**
@@ -60,13 +67,14 @@
60 67 * @param array $styles
61 68 *
62 69 * @return void
63 70 */
64 - public function register_styles( $styles ) {
65 - foreach ( $styles as $handle => $style ) {
66 - $deps = isset( $style['deps'] ) ? $style['deps'] : false;
71 + public function register_styles($styles)
72 + {
73 + foreach ($styles as $handle => $style) {
74 + $deps = isset($style['deps']) ? $style['deps'] : false;
67 75
68 - wp_register_style( $handle, $style['src'], $deps, UICORE_ELEMENTS_VERSION );
76 + wp_register_style($handle, $style['src'], $deps, UICORE_ELEMENTS_VERSION);
69 77 }
70 78 }
71 79
72 80 /**
@@ -73,13 +81,14 @@
73 81 * Get all registered scripts
74 82 *
75 83 * @return array
76 84 */
77 - public function get_scripts() {
78 - $prefix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
85 + public function get_scripts()
86 + {
87 + $prefix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
79 88
80 89 $scripts = [
81 - // libs
90 + // Libs that extend current scripts
82 91 'ui-e-countup' => [
83 92 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/countUp.umd.js',
84 93 'version' => UICORE_ELEMENTS_VERSION,
85 94 'in_footer' => true
@@ -88,24 +97,31 @@
88 97 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/odometer.js',
89 98 'version' => UICORE_ELEMENTS_VERSION,
90 99 'in_footer' => true
91 100 ],
92 - // utils
93 - 'ui-e-entrance' => [
94 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-entrances.js',
101 + // TODO: update swiper version when loop bug is fixed (last checked on 11.2.6)
102 + 'ui-e-swiper' => [
103 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/swiper.js',
104 + 'version' => '11.2.1-ui',
105 + 'in_footer' => true
106 + ],
107 + 'ui-e-special-effects' => [
108 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/carousel-effects/special-effects.js',
95 109 'version' => UICORE_ELEMENTS_VERSION,
96 110 'in_footer' => true
97 111 ],
98 - 'ui-e-masonry' => [
99 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-masonry.js',
112 + 'ui-e-circular-avatar-carousel' => [
113 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/carousel-effects/circular_avatar.js',
100 114 'version' => UICORE_ELEMENTS_VERSION,
101 115 'in_footer' => true
102 116 ],
103 - 'ui-e-ajax-request' => [
104 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/ajax-request.js',
117 + 'ui-e-stacked-carousel' => [
118 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/carousel-effects/stacked.js',
105 119 'version' => UICORE_ELEMENTS_VERSION,
106 120 'in_footer' => true
107 121 ],
122 +
123 + // Utils and non-compiled assets
108 124 'ui-e-recaptcha' => [
109 125 'src' => 'https://www.google.com/recaptcha/api.js?render=explicit',
110 126 'version' => UICORE_ELEMENTS_VERSION,
111 127 'in_footer' => false
@@ -114,26 +130,48 @@
114 130 'src' => 'https://www.google.com/recaptcha/api.js?render=' . get_option('uicore_elements_recaptcha_site_key'),
115 131 'version' => UICORE_ELEMENTS_VERSION,
116 132 'in_footer' => false
117 133 ],
118 - 'ui-e-repeater-custom-key' => [
119 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/repeater-custom-key.js',
134 +
135 + // Components compiled for enqueue
136 + 'ui-e-entrance' => [
137 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-entrances.js',
120 138 'version' => UICORE_ELEMENTS_VERSION,
121 139 'in_footer' => true
122 140 ],
123 - // components
141 + 'ui-e-masonry' => [
142 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-masonry.js',
143 + 'version' => UICORE_ELEMENTS_VERSION,
144 + 'in_footer' => true
145 + ],
146 + 'ui-e-ajax-request' => [
147 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/ajax-request.js',
148 + 'version' => UICORE_ELEMENTS_VERSION,
149 + 'in_footer' => true
150 + ],
124 151 'ui-e-counter' => [
125 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-counter.js',
152 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-counter.js',
126 153 'version' => UICORE_ELEMENTS_VERSION,
127 154 'deps' => ['ui-e-countup'],
128 155 'in_footer' => true
129 156 ],
130 157 'ui-e-carousel' => [
131 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-carousel.js',
158 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-carousel.js',
132 159 'version' => UICORE_ELEMENTS_VERSION,
133 - 'deps' => ['elementor-frontend'],
160 + 'deps' => ['ui-e-swiper'],
134 161 'in_footer' => true
135 162 ],
163 + 'ui-e-repeater-custom-key' => [
164 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/repeater-custom-key.js',
165 + 'version' => UICORE_ELEMENTS_VERSION,
166 + 'in_footer' => true
167 + ],
168 + 'ui-e-testimonial' => [
169 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-testimonial.js',
170 + 'version' => UICORE_ELEMENTS_VERSION,
171 + 'in_footer' => true
172 + ],
173 +
136 174 ];
137 175
138 176 return $scripts;
139 177 }
@@ -142,19 +180,76 @@
142 180 * Get registered styles
143 181 *
144 182 * @return array
145 183 */
146 - public function get_styles() {
184 + public function get_styles()
185 + {
147 186
187 + // Singular files widgets may enqueue
148 188 $styles = [
189 + // Animation related
149 190 'ui-e-animation' => [
150 - 'src' => UICORE_ELEMENTS_ASSETS . '/css/utils/global-animations.css'
191 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/global-animations.css'
151 192 ],
152 193 'ui-e-entrance' => [
153 - 'src' => UICORE_ELEMENTS_ASSETS . '/css/utils/global-entrances.css'
194 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/global-entrances.css'
154 195 ],
196 +
197 + // Layout related
198 + 'ui-e-grid' => [
199 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/grid.css'
200 + ],
201 + 'ui-e-legacy-grid' => [
202 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/legacy-grid.css'
203 + ],
204 + 'ui-e-carousel' => [
205 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/carousel.css',
206 + 'deps' => ['swiper', 'e-swiper'],
207 + ],
208 +
209 + // Specifics
210 + 'ui-e-post-meta' => [
211 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/meta.css'
212 + ],
213 + 'ui-e-filters' => [
214 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/filters.css'
215 + ],
216 + 'ui-e-counter-motion' => [
217 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/counter-motion.css'
218 + ],
219 +
220 + // Advanced Menu
221 + 'ui-e-advanced-menu-editor' => [
222 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/editor.css'
223 + ],
224 + 'ui-e-advanced-menu-fullscreen-layout' => [
225 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/fullscreen-layout.css'
226 + ],
227 + 'ui-e-advanced-menu-website-blur' => [
228 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/website-blur.css'
229 + ],
230 + 'ui-e-advanced-menu-canvas-dropdown-expand' => [
231 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/canvas-expand.css'
232 + ],
233 + 'ui-e-advanced-menu-canvas-dropdown-slide' => [
234 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/canvas-slide.css'
235 + ],
236 + 'ui-e-advanced-menu-hover-underline' => [
237 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/hover-underline.css'
238 + ],
239 + 'ui-e-advanced-menu-hover-button' => [
240 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/hover-button.css'
241 + ],
242 + 'ui-e-advanced-menu-hover-magnet' => [
243 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/hover-magnet.css'
244 + ],
245 + 'ui-e-advanced-menu-hover-focus' => [
246 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/hover-focus.css'
247 + ],
248 + 'ui-e-advanced-menu-hover-text_flip' => [
249 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/advanced-menu/hover-text-flip.css'
250 + ],
155 251 ];
156 252
157 253 return $styles;
158 254 }
159 -
160 255 }