spree_cm_commissioner 2.3.0.pre.pre1 → 2.3.0.pre.pre3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2dabafba4cdf4fd469f2a2788f523d0d21ea86be92d69acfa5d7a063d23ba940
4
- data.tar.gz: 97eef923bdf9bb7ccceba698afb569f21eec06c11f7ea2f15e9b5b2f2d336ad3
3
+ metadata.gz: 827163837040c698b5c27fb4bb3b36502b06db17a9e26cdb52096204856a535a
4
+ data.tar.gz: 813d4ef5221af83ef284433b2f01083a4e4e5e4a85a56f989b746622dcbc3bf2
5
5
  SHA512:
6
- metadata.gz: de0e2d62d1d799d8f929047517de05254e033b51e60cd177f589fe6f0a040efe70dd02fea4ade2309cf47b7594cac145eb3712f1a9aa9223c70f73e14911478b
7
- data.tar.gz: 91ff564a418a1aa7aa228455dae458bc856ced5e758558375080d9d5280d64b81603426174335749c8cc56152466e38b75c402b6feecd1d77cb897c2f416a2e8
6
+ metadata.gz: ee8d43b60aa3c9de7a02d9741eb637a2b53f436997741048444d92b12761e7841434672d41589a5b5aa6850a7b9532c083df2479d726f68b343d93b3a43632d0
7
+ data.tar.gz: 39f06f075e9c7ee8a167b70ea34e19b85be344f57cde75a4b9fdb065657377f7e311b0f9cbee557de48f33b04ee607919b7f0a567246555e7e2f0d68ff8a1a78
data/Gemfile.lock CHANGED
@@ -34,7 +34,7 @@ GIT
34
34
  PATH
35
35
  remote: .
36
36
  specs:
37
- spree_cm_commissioner (2.3.0.pre.pre1)
37
+ spree_cm_commissioner (2.3.0.pre.pre3)
38
38
  activerecord-multi-tenant
39
39
  activerecord_json_validator (~> 2.1, >= 2.1.3)
40
40
  aws-sdk-cloudfront
@@ -8,6 +8,12 @@ module SpreeCmCommissioner
8
8
  # (e.g., a countdown timer) and does not control the release logic.
9
9
  # Each block is released independently when its own expiration time is reached.
10
10
  store_public_metadata :hold_expires_at, :datetime
11
+
12
+ # Calling `.block_ids` directly can cause many slow database queries (N+1 problem)
13
+ # every time `.should_manage_blocks?` or `.preload_block_ids` runs.
14
+ # To avoid this, we store a precomputed list of block IDs in `private_metadata`.
15
+ # This list is updated whenever a guest’s block is saved or destroy.
16
+ store_private_metadata :preload_block_ids, :array, default: []
11
17
  end
12
18
 
13
19
  def should_manage_blocks?
@@ -56,18 +62,5 @@ module SpreeCmCommissioner
56
62
  SpreeCmCommissioner::Seats::BlocksReserver.new(line_item_ids: line_item_ids, reserve_by: user).reserve_blocks!
57
63
  end
58
64
  end
59
-
60
- # Calling `.block_ids` directly can cause many slow database queries (N+1 problem)
61
- # every time `.should_manage_blocks?` or `.preload_block_ids` runs.
62
- # To avoid this, we store a precomputed list of block IDs in `private_metadata`.
63
- # This list is updated whenever a guest’s block is saved or destroy.
64
- def preload_block_ids=(preload_block_ids = [])
65
- self.private_metadata ||= {}
66
- self.private_metadata['preload_block_ids'] = preload_block_ids
67
- end
68
-
69
- def preload_block_ids
70
- self.private_metadata&.fetch('preload_block_ids', []) || []
71
- end
72
65
  end
73
66
  end
@@ -1,5 +1,5 @@
1
1
  module SpreeCmCommissioner
2
- VERSION = '2.3.0-pre1'.freeze
2
+ VERSION = '2.3.0-pre3'.freeze
3
3
 
4
4
  module_function
5
5
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_cm_commissioner
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0.pre.pre1
4
+ version: 2.3.0.pre.pre3
5
5
  platform: ruby
6
6
  authors:
7
7
  - You