spree_cm_commissioner 2.3.0.pre.pre1 → 2.3.0.pre.pre2

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: f500a4db3e391dbe9f28f9bb99cdab6ffbe1164e266b726fc3c63f0c39d4afbc
4
+ data.tar.gz: cc21615f9b7cf21f802b3088089a463fd6dc69e30d85c989e71a48182fbcff3f
5
5
  SHA512:
6
- metadata.gz: de0e2d62d1d799d8f929047517de05254e033b51e60cd177f589fe6f0a040efe70dd02fea4ade2309cf47b7594cac145eb3712f1a9aa9223c70f73e14911478b
7
- data.tar.gz: 91ff564a418a1aa7aa228455dae458bc856ced5e758558375080d9d5280d64b81603426174335749c8cc56152466e38b75c402b6feecd1d77cb897c2f416a2e8
6
+ metadata.gz: 48dcfc4d64219cf42e736f89c1138f7504e5aed6992daa8b773d38dadb1c68f0cb67b30849f7e2c93bff9d953297a7d4033fa53e114bbbc91289654a9bbbb4c4
7
+ data.tar.gz: ece3ecbeba612e1a7a07f5bc1033a43deaf3525f27d0878d7b8a8de025fe298390282e5177d58a5b8ffa4b564af99b8c26d7a31d73ff1282618c8b008c78ce3c
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.pre2)
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
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-pre2'.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.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - You