positioning 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2863317333ca4e36b7c8aecb178fb38f4489fc4dd76eb771c053769eb82cfbe2
4
- data.tar.gz: 13ad7808c1beb5ffaff7d97849b48e194915eeb043e541254843bb22ecfc167d
3
+ metadata.gz: 1a18c3175781c6d4509ea42db1583e68bb2e7258e9c0b99201b1b551fc50ccd7
4
+ data.tar.gz: 8ceb46c8c93882d2e82e88f4d9c5bcafb3371830dd6d5169cf23dd76d8ba6cd0
5
5
  SHA512:
6
- metadata.gz: dfcf0d2652e7c9e7ac65e5a1c885edae966ec0d7bc7119b3691c13b2c34c8ad434c6a7e8590e0ff76e550000cddd8cc3b2b2daf72b0626803d988ed21d6e8d7c
7
- data.tar.gz: bcdd1517650a8327eaa63ebed37bdcf2cc236beaad383eed23c3e063dfca1031c00714acf99542e8dca0d7320a53fcba6181da24f1e60fe0e4c706e870dd23ae
6
+ metadata.gz: 19ced8dddfaefd60c644f19ac576513185e5f3dfa52e8aaabab59f390042f1937bfd3f24874bd228012b337f9f843963b6261b25133d5d1d54f2d606d5c08b7a
7
+ data.tar.gz: ac66e6a3eeb7ab20d54511640c9c1e1e20090b9cd0d01cf583031944d42e7f517dc603afc9b59b49c35617a437f5ebbdbf406e0b1cc71beff3413fd8cf73d76b
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.1.5] - 2024-03-04
4
+
5
+ - Allow empty strings to represent nil for the purposes of solidifying a position
6
+
3
7
  ## [0.1.4] - 2024-03-04
4
8
 
5
9
  - Fix bug relating to relative position hash coming from Rails being a Hash With Indifferent Access
@@ -103,9 +103,9 @@ module Positioning
103
103
  case position_before_type_cast
104
104
  when Integer
105
105
  self.position = position_before_type_cast.clamp(1..last_position)
106
- when :first, {after: nil}
106
+ when :first, {after: nil}, {after: ""}
107
107
  self.position = 1
108
- when nil, :last, {before: nil}
108
+ when nil, "", :last, {before: nil}, {before: ""}
109
109
  self.position = last_position
110
110
  when Hash
111
111
  relative_position, relative_record_or_primary_key = *position_before_type_cast.first
@@ -135,8 +135,9 @@ module Positioning
135
135
 
136
136
  unless position.is_a? Integer
137
137
  raise Error.new,
138
- "`#{@column}` must be an Integer, :first, :last, before: #{base_class.name}, " \
139
- "after: #{base_class.name}, or nil"
138
+ %(`#{@column}` must be an Integer, :first, :last, ) +
139
+ %{before: (#{base_class.name}, #{primary_key_column}, nil, or ""), } +
140
+ %{after: (#{base_class.name}, #{primary_key_column}, nil or ""), nil or ""}
140
141
  end
141
142
  end
142
143
 
@@ -1,3 +1,3 @@
1
1
  module Positioning
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: positioning
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brendon Muir