generator-chisel 2.1.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  <!-- INSERT-NEW-ENTRIES-HERE -->
4
4
 
5
+ ## <small>2.1.1 (2025-05-26)</small>
6
+
7
+ - add woo hooks, get_blocks fixes, js slider adjustments ([8c02af7](https://github.com/xfiveco/generator-chisel/commit/8c02af7))
8
+
5
9
  ## 2.1.0 (2025-05-16)
6
10
 
7
11
  - acf sync module as a plugin, add x5 plugins to installation script ([93b4f8a](https://github.com/xfiveco/generator-chisel/commit/93b4f8a))
@@ -54,20 +54,6 @@ class RegisterBlocks {
54
54
  */
55
55
  private $blocks = array();
56
56
 
57
- /**
58
- * Blocks option name.
59
- *
60
- * @var string
61
- */
62
- private $blocks_option_name;
63
-
64
- /**
65
- * Blocks version option name.
66
- *
67
- * @var string
68
- */
69
- private $blocks_version_option_name;
70
-
71
57
  /**
72
58
  * Theme.
73
59
  *
@@ -102,15 +88,13 @@ class RegisterBlocks {
102
88
  * @param string $blocks_type The blocks type : acf or wp.
103
89
  */
104
90
  public function __construct( $blocks_type ) {
105
- $this->blocks_type = $blocks_type;
106
- $this->theme = wp_get_theme();
107
- $this->blocks_folder = $this->blocks_type === 'acf' ? 'blocks-acf' : 'blocks';
108
- $this->blocks_path = get_template_directory() . '/' . $this->build_folder . '/' . $this->blocks_folder;
109
- $this->blocks_path_src = get_template_directory() . '/' . $this->src_folder . '/' . $this->blocks_folder;
110
- $this->blocks_url = get_template_directory_uri() . '/' . $this->build_folder . '/' . $this->blocks_folder;
111
- $this->blocks = $this->get_blocks();
112
- $this->blocks_option_name = 'chisel_' . $this->blocks_type;
113
- $this->blocks_version_option_name = 'chisel_' . $this->blocks_type . '_version';
91
+ $this->blocks_type = $blocks_type;
92
+ $this->theme = wp_get_theme();
93
+ $this->blocks_folder = $this->blocks_type === 'acf' ? 'blocks-acf' : 'blocks';
94
+ $this->blocks_path = get_template_directory() . '/' . $this->build_folder . '/' . $this->blocks_folder;
95
+ $this->blocks_path_src = get_template_directory() . '/' . $this->src_folder . '/' . $this->blocks_folder;
96
+ $this->blocks_url = get_template_directory_uri() . '/' . $this->build_folder . '/' . $this->blocks_folder;
97
+ $this->blocks = $this->get_blocks();
114
98
 
115
99
  $this->register_scripts = apply_filters( 'chisel_blocks_register_scripts', true, $this->blocks_type );
116
100
  }
@@ -228,29 +212,27 @@ class RegisterBlocks {
228
212
  * @return array
229
213
  */
230
214
  public function get_blocks() {
231
- $blocks = get_option( $this->blocks_option_name, array() ) ?: array();
232
- $blocks_version = get_option( $this->blocks_version_option_name, 0 );
233
-
234
- if ( ! $blocks || version_compare( $this->theme->get( 'Version' ), $blocks_version ) ) {
235
- $blocks_list = is_dir( $this->blocks_path ) ? new \DirectoryIterator( $this->blocks_path ) : array();
215
+ if ( $this->blocks ) {
216
+ return $this->blocks;
217
+ }
236
218
 
237
- if ( $blocks_list ) {
238
- foreach ( $blocks_list as $item ) {
239
- if ( $item->isDot() || ! $item->isDir() ) {
240
- continue;
241
- }
219
+ $blocks_list = is_dir( $this->blocks_path ) ? new \DirectoryIterator( $this->blocks_path ) : array();
242
220
 
243
- $blocks[] = $item->getFilename();
221
+ if ( $blocks_list ) {
222
+ foreach ( $blocks_list as $item ) {
223
+ if ( $item->isDot() || ! $item->isDir() ) {
224
+ continue;
244
225
  }
245
- }
246
226
 
247
- if ( ! ThemeHelpers::is_fast_refresh() ) {
248
- update_option( $this->blocks_option_name, $blocks );
249
- update_option( $this->blocks_version_option_name, $this->theme->get( 'Version' ) );
227
+ $block_name = $item->getFilename();
228
+
229
+ if ( ! in_array( $block_name, $this->blocks, true ) ) {
230
+ $this->blocks[] = $item->getFilename();
231
+ }
250
232
  }
251
233
  }
252
234
 
253
- return $blocks;
235
+ return $this->blocks;
254
236
  }
255
237
 
256
238
  /**
@@ -312,6 +312,12 @@ class Slider {
312
312
  slideImg.removeAttribute(attr);
313
313
  });
314
314
 
315
+ if (!thumbnailUrl) {
316
+ throw new Error(
317
+ 'data-thumbnail-url attribute must be present on each swiper-slide element.',
318
+ );
319
+ }
320
+
315
321
  const imageSize = thumbnailUrl.match(/(\d+)x(\d+)\./i);
316
322
 
317
323
  if (imageSize?.[2]) {
@@ -16,11 +16,11 @@ if ( is_singular( 'product' ) ) {
16
16
  $context['product'] = wc_get_product( $context['post']->ID );
17
17
 
18
18
  // Get upsells ids.
19
- $upsells_ids = $context['product']->get_upsell_ids();
19
+ $upsells_ids = apply_filters( 'chisel_woocommerce_upsell_display', true ) ? $context['product']->get_upsell_ids() : array();
20
20
 
21
21
  // Get related / crossells products ids.
22
22
  $related_limit = wc_get_loop_prop( 'columns' );
23
- $related_ids = wc_get_related_products( $context['post']->id, $related_limit, $upsells_ids );
23
+ $related_ids = apply_filters( 'chisel_woocommerce_output_related_products', true ) ? wc_get_related_products( $context['post']->id, $related_limit, $upsells_ids ) : array();
24
24
 
25
25
  $context['upsells_products'] = $upsells_ids ? Timber::get_posts( $upsells_ids ) : array();
26
26
  $context['related_products'] = $related_ids ? Timber::get_posts( $related_ids ) : array();
@@ -1,5 +1,5 @@
1
1
  module.exports = {
2
2
  'chisel-scripts': '2.0.0-2.0.0-alpha.8.1',
3
3
  'chisel-shared-utils': '2.0.0-alpha.1',
4
- 'generator-chisel': '2.1.0',
4
+ 'generator-chisel': '2.1.1',
5
5
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "generator-chisel",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "A generator for scaffolding front-end and WordPress projects",
5
5
  "bin": {
6
6
  "chisel": "bin/chisel.js"
@@ -37,5 +37,5 @@
37
37
  "tinyqueue": "^2.0.3",
38
38
  "update-notifier": "^4.1.0"
39
39
  },
40
- "gitHead": "3f10d4c28b5a261ef5a1c6c14efd6e1f40632b63"
40
+ "gitHead": "5ce0d679d897e7cc1ed936bddf6d50aa9cab3ea1"
41
41
  }