PluginProbe
UiCore Elements – Free widgets and templates for Elementor / 1.3.17
UiCore Elements – Free widgets and templates for Elementor v1.3.17
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 1.2.4 All 41 releases
← All changes | includes/class-assets.php +143 -56 1.0.61.3.17 View file →
@@ -1,21 +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', function() {
14 - $this->register(true);
15 - }, 1 );
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);
16 18 } else {
17 - add_action( 'wp_enqueue_scripts', [ $this, 'register' ], 5 );
19 + add_action('wp_enqueue_scripts', [$this, 'register'], 5);
18 20 }
19 21 }
20 22
21 23 /**
@@ -20,19 +22,25 @@
20 22
21 23 /**
22 24 * Register our app scripts and styles
23 25 *
24 - * @param bool $editor If the scripts are meant for the Elementor editor's. Defaults to false.
26 + * @return void
27 + */
28 + public function register()
29 + {
30 + $this->register_scripts($this->get_scripts());
31 + $this->register_styles($this->get_styles());
32 + }
33 +
34 + /**
35 + * Enqueue our app scripts directly in the Elementor editor
25 36 *
26 37 * @return void
27 38 */
28 - public function register(bool $editor = false) {
29 - $this->register_scripts( $this->get_scripts() );
30 - $this->register_styles( $this->get_styles() );
31 -
32 - // Elementor editor specific scripts
33 - if($editor){
34 - wp_enqueue_script('ui-nested-content', UICORE_ELEMENTS_ASSETS . '/js/utils/nested-content.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);
35 43 }
36 44 }
37 45
38 46 /**
@@ -41,15 +49,16 @@
41 49 * @param array $scripts
42 50 *
43 51 * @return void
44 52 */
45 - private function register_scripts( $scripts ) {
46 - foreach ( $scripts as $handle => $script ) {
47 - $deps = isset( $script['deps'] ) ? $script['deps'] : false;
48 - $in_footer = isset( $script['in_footer'] ) ? $script['in_footer'] : false;
49 - $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;
50 59
51 - wp_register_script( $handle, $script['src'], $deps, $version, $in_footer );
60 + wp_register_script($handle, $script['src'], $deps, $version, $in_footer);
52 61 }
53 62 }
54 63
55 64 /**
@@ -58,13 +67,14 @@
58 67 * @param array $styles
59 68 *
60 69 * @return void
61 70 */
62 - public function register_styles( $styles ) {
63 - foreach ( $styles as $handle => $style ) {
64 - $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;
65 75
66 - wp_register_style( $handle, $style['src'], $deps, UICORE_ELEMENTS_VERSION );
76 + wp_register_style($handle, $style['src'], $deps, UICORE_ELEMENTS_VERSION);
67 77 }
68 78 }
69 79
70 80 /**
@@ -71,13 +81,14 @@
71 81 * Get all registered scripts
72 82 *
73 83 * @return array
74 84 */
75 - public function get_scripts() {
76 - $prefix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
85 + public function get_scripts()
86 + {
87 + $prefix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
77 88
78 89 $scripts = [
79 - // libs
90 + // Libs that extend current scripts
80 91 'ui-e-countup' => [
81 92 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/countUp.umd.js',
82 93 'version' => UICORE_ELEMENTS_VERSION,
83 94 'in_footer' => true
@@ -86,19 +97,31 @@
86 97 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/odometer.js',
87 98 'version' => UICORE_ELEMENTS_VERSION,
88 99 'in_footer' => true
89 100 ],
90 - // utils
91 - 'ui-e-entrance' => [
92 - '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',
93 109 'version' => UICORE_ELEMENTS_VERSION,
94 110 'in_footer' => true
95 111 ],
96 - 'ui-e-ajax-request' => [
97 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/ajax-request.js',
112 + 'ui-e-circular-avatar-carousel' => [
113 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/carousel-effects/circular_avatar.js',
98 114 'version' => UICORE_ELEMENTS_VERSION,
99 115 'in_footer' => true
100 116 ],
117 + 'ui-e-stacked-carousel' => [
118 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/lib/carousel-effects/stacked.js',
119 + 'version' => UICORE_ELEMENTS_VERSION,
120 + 'in_footer' => true
121 + ],
122 +
123 + // Utils and non-compiled assets
101 124 'ui-e-recaptcha' => [
102 125 'src' => 'https://www.google.com/recaptcha/api.js?render=explicit',
103 126 'version' => UICORE_ELEMENTS_VERSION,
104 127 'in_footer' => false
@@ -107,35 +130,48 @@
107 130 'src' => 'https://www.google.com/recaptcha/api.js?render=' . get_option('uicore_elements_recaptcha_site_key'),
108 131 'version' => UICORE_ELEMENTS_VERSION,
109 132 'in_footer' => false
110 133 ],
111 - 'ui-e-repeater-custom-key' => [
112 - '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',
113 138 'version' => UICORE_ELEMENTS_VERSION,
114 139 'in_footer' => true
115 140 ],
116 - /*
117 - 'ui-e-nested-elements' => [
118 - //'src' => \ELEMENTOR_ASSETS_URL . '/js/nested-elements.js',
119 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/nested-elements.js',
141 + 'ui-e-masonry' => [
142 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-masonry.js',
120 143 'version' => UICORE_ELEMENTS_VERSION,
121 - //'deps' => ['elementor-common-modules'],
122 144 'in_footer' => true
123 145 ],
124 - */
125 - // components
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 + ],
126 151 'ui-e-counter' => [
127 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-counter.js',
152 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-counter.js',
128 153 'version' => UICORE_ELEMENTS_VERSION,
129 154 'deps' => ['ui-e-countup'],
130 155 'in_footer' => true
131 156 ],
132 157 'ui-e-carousel' => [
133 - 'src' => UICORE_ELEMENTS_ASSETS . '/js/utils/global-carousel.js',
158 + 'src' => UICORE_ELEMENTS_ASSETS . '/js/components/global-carousel.js',
134 159 'version' => UICORE_ELEMENTS_VERSION,
135 - 'deps' => ['elementor-frontend'],
160 + 'deps' => ['ui-e-swiper'],
136 161 'in_footer' => true
137 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 +
138 174 ];
139 175
140 176 return $scripts;
141 177 }
@@ -144,25 +180,76 @@
144 180 * Get registered styles
145 181 *
146 182 * @return array
147 183 */
148 - public function get_styles() {
184 + public function get_styles()
185 + {
149 186
187 + // Singular files widgets may enqueue
150 188 $styles = [
189 + // Animation related
151 190 'ui-e-animation' => [
152 - 'src' => UICORE_ELEMENTS_ASSETS . '/css/utils/global-animations.css'
191 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/global-animations.css'
153 192 ],
154 193 'ui-e-entrance' => [
155 - 'src' => UICORE_ELEMENTS_ASSETS . '/css/utils/global-entrances.css'
194 + 'src' => UICORE_ELEMENTS_ASSETS . '/css/components/global-entrances.css'
156 195 ],
157 - // 'uicore_animate-settings' => [
158 - // 'src' => UICORE_ELEMENTS_ASSETS . '/css/settings.css'
159 - // ],
160 - // 'uicore_animate-admin' => [
161 - // 'src' => UICORE_ELEMENTS_ASSETS . '/css/admin.css'
162 - // ],
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 + ],
163 251 ];
164 252
165 253 return $styles;
166 254 }
167 -
168 255 }